教授给了一个.sql文件来做一些练习,下面是其中的一部分:
创建表部门
(DEPTNO NUMERIC(2) CONSTRAINT PK_DEPT PRIMARY KEY, (error 1)
DNAME VARCHAR(14),
LOC VARCHAR(13) );
创建表emp
(EMPNO NUMERIC(4) CONSTRAINT PK_EMP PRIMARY KEY, (error 2)
ENAME VARCHAR(10),
JOB VARCHAR(9),
HIREDATE DATE,
SAL NUMERIC(7,2),
DEPTNO NUMERIC(2) CONSTRAINT FK_DEPTNO REFERENCES DEPT); (error 3)
我们用pgadmin 3在课堂上运行了这个文件,一切都很顺利,但是我下载了mysql而不是postgres在家里继续练习,它给出了一个错误:“unexpected constraint”。既然它可以在postgres中使用,但在mysql中却不能使用,那可能是mysql的语法错误吧?
2条答案
按热度按时间u1ehiz5o1#
你应该做得更详细,每
rdbms
是不同的。。你不能用你在某些地方工作的语句rdbms
对其他人rdbms
餐桌部表emp
jckbn6z72#
mysql可接受的外键格式在其丰富的文档中进行了描述。
文档中还显示了其他约束选项
例如,主键:
作为create表的一部分,它可以在最后进行外键检查。