表不是自动在mysql中使用TIMESTAMP创建的

时间:2015-02-18 15:49:24

标签: php mysql database

我正在尝试创建一个包含一些帖子数据和发布日期的表格。但问题是所有列都是自动创建的,除了' 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);  

如果有人能帮我解决这个问题,我将非常感激。感谢

1 个答案:

答案 0 :(得分:3)

错别字:

         `post_date` [..snip...] CURRENT_TIMESTAMP;
                                                  ^--- 
        PRIMARY KEY(`post_id`)
        )';

您使用“额外”;提前终止创建查询,导致整个查询无效。

如果您对查询调用进行了最小的错误检查,则会告诉您语法错误:

mysqli_query($con,$comment_table) or die(mysqli_error($con));
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

从不永远假设成功。在这个确切的情况下你会被踢进臀部。总是假设失败,检查失败,并将成功视为一个惊喜。