我正在尝试创建一个包含一些发布数据和发布日期的表。但问题是所有列都是自动创建的,除了将包含发布日期的 'post_date' 列。我的代码如下.....
$comment_table='CREATE TABLE IF NOT EXISTS `pppp`
(
`initial` varchar(255) NOT NULL,
`course_name` varchar(255) NOT NULL,
`course_code` varchar(255) NOT NULL,
`post` varchar(1000) NOT NULL DEFAULT "empty",
`post_id` int(11) NOT NULL AUTO_INCREMENT,
`post_date` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
PRIMARY KEY(`post_id`)
)';
mysqli_query($con,$comment_table);
如果有人能帮我解决这个问题,我将不胜感激。谢谢
最佳答案
错别字:
`post_date` [..snip...] CURRENT_TIMESTAMP;
^---
PRIMARY KEY(`post_id`)
)';
您使用“额外的”;
提前终止了您的创建查询,导致整个查询无效。
如果您对查询调用进行了哪怕是最小的错误检查,您也会被告知语法错误:
mysqli_query($con,$comment_table) or die(mysqli_error($con));
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
永远不要永远假设成功。你会被这种确切的情况踢到屁股上。始终假设失败,检查失败,并将成功视为惊喜。
关于php - 表不会自动在 mysql 中使用 TIMESTAMP 创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28587759/