【发布时间】:2016-03-30 01:10:41
【问题描述】:
我试图编写一些 DDL 代码来询问数字范围,但在互联网上找不到任何我要查找的内容。 到目前为止,我有:
create table Section (
c# numeric(10),
se# numeric(10),
emp# numeric(5),
time numeric(5),
constraint Section_PK primary key (c#, se#),
constraint Section_FK_Course foreign key (c#) references Course,
constraint Section_FK_Employee foreign key (emp#) references Employee
)
我的障碍在哪里,我需要“控制号”是40到60之间的任何数字,默认为20,同时,如果c#在3000到4000之间,那么控制号必须是小于 40。
我真的很困惑如何做到这一点。这是一种“如果那么”的陈述吗?我以前没有做过这样的事情,不知道如何或从哪里开始寻找。
【问题讨论】:
-
什么是“控制号”,它的用途是什么?
-
@Amit 我很抱歉,我忘了将它添加到原始列表中。我有点困惑是否应该添加它。我认为,它应该是
control number numeric(4),,但这确实是我所掌握的所有信息。 -
这个说法是否正确——“我需要让“控制号”为 40 到 60 之间的任意数字,并且默认为 20”?如果它必须在 40 到 60 之间,怎么能默认为 20?
-
是的,我已经仔细检查过了,他们希望它在 40 到 60 之间,但默认为 20。我认为这只是意味着如果它是 Null,则将 20 作为占位符。我不知道这是什么逻辑。
标签: sql constraints ddl