我是SQL新手。我创建了几个表:
CREATE TABLE MAINTINANCE
(Maint_mname char(10),
Maint_date date,
Maint_duedate date NOT NULL,
Maint_mdesc char (15));
CREATE TABLE DESIGNERR
(Dez_emp_number varchar(11),
Dez_field char(12),
Dez_qualification char(10) NOT NULL,
Dez_experience smallint);
对于第一个表,我添加了以下约束:
ALTER TABLE MAINTINANCE ADD CONSTRAINT CHK_maintdate CHECK(Maint_date<MAint_duedate);
但我收到错误invalid ALTER TABLE option
。你能告诉我为什么会这样吗?同样适合朋友,但不适合我。
对于第二个表,我必须为业务规则编写SQL命令:
如果设计师的资格是BS,那么至少4年 经验是必需的。但是,如果设计师的资格是 MS然后至少2年经验就足够了。
我们如何在SQL中定义此业务规则?
答案 0 :(得分:3)
您发布的代码
SQL> CREATE TABLE MAINTINANCE
2 (Maint_mname char(10),
3 Maint_date date,
4 Maint_duedate date NOT NULL,
5 Maint_mdesc char (15));
Table created.
SQL> ALTER TABLE MAINTINANCE ADD CONSTRAINT CHK_maintdate CHECK(Maint_date<MAint_duedate);
Table altered.
如果您收到错误,
虽然它不会影响您的代码,但“MAINTINANCE”一词拼写错误。它应该是“维护”。如果您的表名拼写正确,未来的人类开发人员将不胜感激。