我试图在已创建的数据库中创建一个表。
我已经使用USE church_fpip
切换到了数据库。
这是我创建新表的代码,但由于某种原因,似乎ZEROFILL正在创建语法错误。
mysql> CREATE TABLE sermons (
-> id INT NOT NULL AUTO_INCREMENT,
-> year INT(4) NOT NULL,
-> month INT(2) NOT NULL ZEROFILL,
-> day INT(2) NOT NULL ZEROFILL,
-> title VARCHAR(50) NOT NULL,
-> preacher VARCHAR(30) NOT NULL,
-> length INT(3) NOT NULL,
-> visible TINYINT(1) NOT NULL,
-> PRIMARY KEY (id)
-> );
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ZEROFILL,
day INT(2) NOT NULL ZEROFILL,
title VARCHAR(50) NOT NULL,
preach' at line 4
答案 0 :(得分:1)
我认为ZEROFILL
需要在NOT NULL
之前,例如
month INT(2) ZEROFILL NOT NULL,
day INT(2) ZEROFILL NOT NULL,
但是我会建议您使用DATETIME
来代替您尝试做的事情,而不是使用代表日/月/年的三列。
答案 1 :(得分:1)
我建议使用日期字段而不是单独的年,月和日。您可以根据需要解析日期。这样,它有助于保持数据库的清洁和规范化。