create table 商品订货单(
订单编号 char(4) not null,
客户编号 char(4),
订货单位 varchar(30),
订货金额 numeric(18,2),
订货日期 datetime,
交货期限 datetime,
订货人 varchar(10),
是否处理 bit
)
go
alter table 商品订货单
add constraint PK_商品订货单
primary key(订单编号)
go
Alter table 商品订货单
add constraint CK_商品订货单_订单编号
check([订单编号]like'[0-9][0-9][0-9][0-9]')
go
Alter table 商品订货单
add constraint CK_商品订货单_客户编号
check([客户编号]like'[0-9][0-9][0-9][0-9]')
go
Alter table 商品订货单
add constraint CK_商品订货单_交货期限 check(订单编号>订货日期)
go
Alter table 商品订货单
add constraint DF_商品订货单_订货金额 default 0.00 for 订货金额
go
Alter table 商品订货单
add constraint DF_商品订货单_订货日期 default getdate() for 订货日期
go
Alter table 商品订货单
add constraint DF_商品订货单_是否处理 default 0 for 是否处理
create table 订单明细(
订单编号 char(4) not null,
序号 smallint not null,
商品编号 char(4) not null,
商品名称 varchar(30),
商品型号 varchar(30),
数量 tinyint,
单价 numeric(18,2),
单位 nchar(1),
小计 as 数量*单价)
go
alter table 订单明细
add constraint PK_订单明细
primary key (序号,商品编号)
go
Alter table 订单明细
add constraint CK_订单明细_商品编号
check([商品编号]like'[0-9][0-9][0-9][0-9]')
go
Alter table 订单明细
add constraint FK_订单明细_商品订货单
foreign key(订单编号) references 商品订货单(订单编号)
on delete cascade on update cascade
insert 商品订货单(订单编号,客户编号,订货单位,交货期限,订货人)
Values('1001','1001','驻马店市蓝星商贸有限公司','20110901','张军建'),
('1002','1002','河南利友软件公司','20110825','田超')
go
insert 订单明细(订单编号,序号,商品编号,商品名称,商品型号,数量,单价,单位)
Values('1001',1,'1101','计算机','V470ca',5,8000.00,'台'),
('1001',2,'1102','计算机','V471a',5,5000.00,'台')
Update 商品订货单 Set 订货金额=75000.00 Where 订单编号='1001'
insert 订单明细(订单编号,序号,商品编号,商品名称,商品型号,数量,单价,单位)
Values('1002',1,'1103','计算机','V470ca',5,9000.00,'台')
Update 商品订货单 Set 订货金额=45000.00 Where 订单编号='1002'
其实就是第一个 insert 语句有问题,导致商品表插曲失败了,所以后面的两条语句外键约束自然也失败了。 类型转换失败那个,你用-分隔一下就好了。例如 2011-08-25
错误信息说得比较明确了。第一个是字符到日期型转换数据超出范围。具体检查一下数据。
后面量个错误是FK约束。要先查如PK表再查FK表。
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632