Hub*_*bro 12 mysql phpmyadmin mysql-error-1293
我有一个包含两个时间戳字段的表.我只是用名称和类型定义它们TIMESTAMP,但由于某种原因MySQL自动设置其中一个具有默认值和属性on update CURRENT_TIMESTAMP.我计划在任一字段中没有默认值,但其中一个字段称为"date_updated",所以我想我可以将提到的属性设置为该字段.
不幸的是,它是使用on update CURRENT_TIMESTAMP属性设置的字段"date_created",无论我做什么,MySQL都不会让我删除它.
我已经尝试编辑"date_created"字段并删除属性.单击"保存"时,属性又回来了.我还尝试选择两个字段,从其中一个字段中删除属性并在另一个字段上设置它.它给了我错误#1293 - Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause,突然两个值的属性列都设置为on update CURRENT_TIMESTAMP结果:
Error
SQL query:
ALTER TABLE `pages` CHANGE `date_created` `date_created` TIMESTAMP NOT NULL ,
CHANGE `date_updated` `date_updated` TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL
MySQL said:
#1293 - Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
Run Code Online (Sandbox Code Playgroud)
我是否必须以正确的顺序重新创建这两列以解决此问题?
我想知道如何正确解决这个问题,以备将来参考.
谢谢
现在我也试着跑了
ALTER TABLE pages
CHANGE date_created
date_created TIMESTAMP NOT NULL
Run Code Online (Sandbox Code Playgroud)
mez*_*eze 16
你应该指定DEFAULT CURRENT_TIMESTAMP(或DEFAULT 0)
ALTER TABLE pages CHANGE date_created date_created TIMESTAMP NOT NULL DEFAULT 0,
CHANGE `date_updated` `date_updated` TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8594 次 |
| 最近记录: |