以下小题使用如下关系: 客户(客户号,名称,联系人,邮政编码,电话号码) 产品(产品号,名称,规格说明,单价) 订购单(订单号,客户号,订购日期) 订购单名细(订单号,序号,产品号,数量) 假设客户表中有客户号(关键7)CI~C10共10条客户记录,订购

admin2016-09-30  30

问题 以下小题使用如下关系:
客户(客户号,名称,联系人,邮政编码,电话号码)
产品(产品号,名称,规格说明,单价)
订购单(订单号,客户号,订购日期)
订购单名细(订单号,序号,产品号,数量)
假设客户表中有客户号(关键7)CI~C10共10条客户记录,订购单表有订单号(关键宁)ORl~0R8共8条订购单记录,并且订购单表参照客户表。如下命令可以正确执行的是(    )。

选项 A、1NSERT INTO订购单VALUES(‘OR5’, ‘C5’,{^2008/10/10})
B、INSERT INJ’O订购单VALUES(’OR5’, ‘C11’,{^2008/10/10})
C、INSERT INTO订购单VALUES(‘OR9’,IC 11’,{^2008/10/10})
D、INSERT INTO订购单VALUES(’OR9’,‘C5’,{^2008/1 0/10})

答案D

解析 本题中,客户表和订购单表是相互关联的表.其中客户号是公共字段,客户表是父表,订购单表是子表,题目中说明了订购单表参照客户表,即实施了参照完整性规则。当要向订购单表中插入一条记录时要注意两点:
①新记录的订单号不能与表中已有记录的订单号重复,因为订单号是订购单表的丰关键宁。而题中说明订购单表中已有订购单号ORl~OR8,就不能再捅入订单号为OR5的记录。
②由于订购单表要参照客户表,所以在要插入记录的表中,如果联接字段值在父表中没有相匹配的值,则禁止插入。而题中说明父表客户表中并没有c11这个客户号,因此在子表订购单表中不能插入客户号为cll的记录。
SQL中,插入操作的命令格式如下:
INSERT INTO啦dbfname.“[(finame)[1,name2,…])
VALLYES(eExpression[,eExpression2,…])
其中d6,name指定要插入的表,当插入的不是完整记录时,可以用fname1,fname2,…指定字段,VALLYES给出具体的记录值。
转载请注明原文地址:https://jikaoti.com/ti/1mk0FFFM
0

最新回复(0)