初学者MySQL语法错误

时间:2015-03-30 21:29:31

标签: php mysql sql database zerofill

我试图在已创建的数据库中创建一个表。 我已经使用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

2 个答案:

答案 0 :(得分:1)

我认为ZEROFILL需要在NOT NULL之前,例如

 month INT(2) ZEROFILL NOT NULL,
 day INT(2) ZEROFILL NOT NULL,

但是我会建议您使用DATETIME来代替您尝试做的事情,而不是使用代表日/月/年的三列。

答案 1 :(得分:1)

我建议使用日期字段而不是单独的年,月和日。您可以根据需要解析日期。这样,它有助于保持数据库的清洁和规范化。