首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >初学者MySQL语法错误

问初学者MySQL语法错误
EN

Stack Overflow用户
提问于 2015-03-30 21:29:31
回答 2查看 76关注 0票数 0

我试图在已经创建的数据库中创建一个表。我已经使用USE church_fpip切换到数据库中。下面是我创建新表的代码,但出于某种原因,ZEROFILL似乎正在创建一个语法错误。

代码语言:javascript
复制
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
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-30 21:35:27

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

代码语言:javascript
复制
 month INT(2) ZEROFILL NOT NULL,
 day INT(2) ZEROFILL NOT NULL,

不过,我建议您在尝试执行的工作中使用DATETIME,而不是使用代表日/月/年的三列。

票数 1
EN

Stack Overflow用户

发布于 2015-04-29 02:25:32

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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29356661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档