题目描述:
在audit表上创建外键约束,其emp_no对应employees_test表的主键id。
CREATE TABLE employees_test(
ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL
);
CREATE TABLE audit(
EMP_no INT NOT NULL,
create_date datetime NOT NULL
);
输入描述:
无
输出描述:
无
思路分析:
SQLite中不能通过 ALTER TABLE … ADD FOREIGN KEY … REFERENCES … 语句来对已创建好的字段创建外键,所以只能先删除表,再重新建表的过程中创建外键。
代码实现:
drop table audit;
CREATE TABLE audit(
EMP_no INT NOT NULL,
create_date datetime NOT NULL,
#创建外键
FOREIGN KEY(EMP_no) REFERENCES employees_test(ID));
#这道题的OJ优点问题,格式要求非常严格,列级约束无法通过
博客推荐:
此题涉及到MySQL中表的管理,请参考我的专栏:
MySQL从入门到精通之表的管理