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

#1楼 票数:1 已采纳

我认为ZEROFILL必须在NOT NULL之前,例如

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

但是,我建议您将DATETIME用于您要执行的操作,而不要使用三列来表示日/月/年。

#2楼 票数:1

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

  ask by inthenameofmusik translate from so

未解决问题?本站智能推荐:

2回复

MySQL认为'2015123'与'02015123'不同

我正在尝试从数据库中选择stockid等于从用户输入的stockid的列。 这是我的代码如下: 我知道该代码是正确的,但是,在数据库中签入时,stockid等效于'2015123',但在此页面上为此代码发布的$ stockid是'02015123' 。 这就是为什么它什么也不返回的原因。
1回复

我想在mysql-php中以001开头的自动递增列“ID”?使用phpmyadmin如何做[重复]

这个问题与以下内容完全相同: 如何在Mysql中创建一个id(自动增量)与字符串连接? 使用PHP只有 2个答案 我想从001,002,003开始我的自动增量列,就像那个..plz告诉我该怎么做.. 使用phpMyadmin。
1回复

将MYSQL数据库格式化为仅以单个前导零开头

所以我尝试使用无符号零填充来解决这个问题,但这种情况不断发生以将字段填充到 7 的长度: MYSQL 数据库零填充我希望它在区号前只加一个 0。
3回复

如何确保mysql列具有4个字符

如何确保mysql列具有4个字符? 由于使用了至少4个字符的MATCH函数,我希望我的主键INT至少为4个字符。 我该怎么做 ? 例如。 sql表中的1将是0001
1回复

INPUTINTO错误-MYSQL初学者语法问题[关闭]

我已经看到其他问题询问相同的问题,但似乎找不到解决该问题的方法。 我要发布DESCRIBE [table]; INPUT INTO和语法错误。
3回复

PHP语法的初学者,mySQL_query错误

我正在尝试使用DreamWeaver CS5制作一个仅创建视图的页面。 我如何输入代码以仅接收包含与登录用户有关的所有数据的表。
4回复

初学者mysql-创建表时出现语法错误

我对SQL非常陌生,我发现了类似的问题,但是我进行了建议的更改,但仍然收到相同的错误。 谁能在正确的方向上提示我为什么我仍然会收到此错误? 任何建议或帮助将不胜感激。 谢谢。
2回复

另一个有mysqli问题的初学者

我对使用PHP和数据库很陌生。 因此,像所有初学者一样,我在使用mysqli扩展程序时遇到问题。 我试图避免使用mysqli_results,因为我不想在每次需要简单数据时都处理数组和循环。 但这可能是不可能的。 我需要回显$user_count ,但是似乎什么都没有存储在那里。 根