龙空技术网

数据分析师的SQL第11课:使用DML插入数据

Python-Jack 36

前言:

目前我们对“限制性别字段中只能输入男或女采用的约束是”大致比较关怀,咱们都需要学习一些“限制性别字段中只能输入男或女采用的约束是”的相关文章。那么小编同时在网摘上网罗了一些有关“限制性别字段中只能输入男或女采用的约束是””的相关内容,希望兄弟们能喜欢,兄弟们快快来学习一下吧!

继续来看看sq语言中dml数据操作语言的部分。数据操作语言主要帮助向二维表中添加数据,从二维表中移除数据,修改二维表的数据以及对于数据分析师来说最为重要的一个操作,从二维表中提取需要的数据。

·先来看看添加数据的操作,可以点击窗口上带加号的按钮开一个新的查询窗口。在新的查询窗口里面先通过usehrs切换到名为hrs的数据库,切换到指定数据库的上下文环境。这里还可以来一个叫修tables的命令,可以看到这边有哪些表,可以看到这边有刚才创建好的员工表、部门表。

·这里再给大家讲一个操作叫describe,它可以帮我们查看表结构。比如想看看部门表的表结构,可以来个describe departments,执行。这边会告诉我部门表有三个字段,分别叫delumber、delam、de location。这边是数据类型,这边是是否允许为空,有没有非空约束谁是主见。

·再来看看员工表一样的操作describe employees。这边可以看到员工表一共有六个字段,分别是员工的编号、员工的姓名、性别、生日、工资所属部门的编号。这边有一个m、u、l,这个叫multiple,它是表明这是一个外建立,维持多对一关系的外建立,这就是表结构。

·接下来看一下如何向部门表中添加数据。先把底下的窗口关上,添加数据的操作叫做insert,用in two后面跟上表的名字。要向部门表中添加一个部门该怎么做?来个insert in two departments。由于部门表里面有三个列,有三个字段,这个时候在添加数据的时候通过一个叫y六字的关键字后面跟上一个三元组,分别给出部门的编号、部门的名称以及部门的所在地。

这就是一个完整的营销的语句。当执行营销的语句时,一个新的部门就会加到部门表里面。可以通过这样的一个操作向部门表中添加一条新的部门记录来执行它。这里没有报错,可以打开输出窗口看一下。这里提示我一行受到影响,就说明刚才添加的这条记录已然添加成功了。可以点击部门表后面的按钮来查看一下到底数据有没有写到表里面。

大家可以看到这边刚才添加的部门依然写到部门表了。这里还有几个小问题需要跟大家交代一下。先回到刚才的查询窗口,先看一看刚才的这条影像的语句还能不能够再执行一次。这里报错了,可以看一下错误消息,把这里放大一些,它是告诉我们10是一个重复的条目,为什么不能重复?因为它是附件,部门编号是部门表的附件。是必须要确保独一无二的,所以绝对不能再添加一个编号为10的部门到表里面,这个是不被允许的。

再看一看能不能够不按照部门编号、部门名称、部门所在地顺序来书写三元组?比如这里想再加一个部门,这条语句会执行成功吗?来执行一下。

可以看到这里报错了,是说这里想要的是一个整数,因为这个字段认为给的是部分编号,这里想要的是个整数,而给的是一个字符串,并不是一个整数,这个错误的值。如果希望把顺序打乱,就要按照部门名称、部门编号、部门所在地顺序来插入条数据,能够做到吗?实际上也是可以做到的。

怎么做?在vandals的前面再来一对圆括号,告诉第一个字段不是部门编号,而是d name部门名称,第二个字段是d number,第三个字段是d location。如果这么做了,重新执行刚才的影像的操作,各位看一下,执行这里显示一行受影响,说明第二条部门的记录已然添加成功了。

回到刚才这个窗口,重新把这刷新一下或者重新点执行,执行上面这条语句可以看到销售部二编号为20的销售部也加到部门表中了,还可以使用p处理的方式来插入数据。所谓p处理就是一次性的插入多条数据。

回到刚才的查询窗口来看一下,比如来执行这么一条s q语句insert into departments,然后这边按照delumber delam de location的顺序来给出三个值。在values的后面给了四个三元组,用逗号做了一个分格,这就表示要一次性的插入四条数据到表中来执行一下。

大家可以看一下底下的提示,这边显示四行受影响,说明四条数据都插入成功了。回到刚才的窗口做一个刷新,大家可以看一下刚才添加的三零四零五零六零四个部门已然添加成功,这就是一个p处理。p处理操作比一条一条的执行隐私而特一条数据一条数据的做插入效率要高的多。

所以在可能的情况下建议大家在插入数据的时候尽可能使用p处理进行批量操作,这样性能会好的多。再来添加一条员工的数据看一下,比如添加这么一条数据,由于刚才在建表的时候给性别字段加上了检查约束,限制了性别字段的值,只能是男或者女。

现在比如添加员工的时候,这里既不写男也不写女,比如给个空字符串或者写个其他值,这里会报什么错?来执行,执行的时候大家可以看一下,这里提到一点检查约束被违反了,违反了哪个检查约束?违反了之前加的ck emp ginger检查约束。检查约束里面限制了员工的性别,只能取男和女两个值之一,所以这里必须要给出正确的性别,要么写男,要么写女,不能写其他的值。

再来看一下部门编号字段,部门编号字段刚才是为它添加了外界约束的,限制了员工表的部门编号,必须要参照部门表的部门编号。在刚才的部门表中,部门编号有一千零二零三零四零五零六零,在添加员工的时候,这里的部门编号也只能在这六个编号里面做出选择,不能够写其他的值。

比如把这改成九零,看看会怎么样?执行这里又报错了,看下错误消息,这里说的是违反了外界约束,违反了刚才添加的fk enclose d number外界约束。外界约束是要求部门编号,员工表的部门编号必须参照部门表的部门编号,所以这里只能给出部门表里面有的部门编号,把它改回成一零。

来看一下执行,这里显示一行受影响,说明员工已然添加成功了。可以看一下员工表,这边没有问题,这就是在做影视的操作的时候需要大家注意的几个地方。

标签: #限制性别字段中只能输入男或女采用的约束是