【问题标题】:How do I add a new column to MySQL via phpMyAdmin?如何通过 phpMyAdmin 向 MySQL 添加新列?
【发布时间】:2020-07-02 04:54:44
【问题描述】:

来自多年使用 MS SQL Server 的经验,尽管使用 phpMyAdmin 向 MySQL 数据库表添加一个简单的可为空整数列会很容易。我只是找到了最类似于 SSMS 部分的 UI 部分,其中一个新列被添加到 SQL Server 中的表中,单击添加列,输入名称,选择 int,默认值为 null。

该表本身是由 WordPress 创建的帖子表。当我点击保存时,我收到一条错误消息

ALTER TABLE 'wp_posts' ADD 'acserp' INT NULL DEFAULT NULL AFTER 'comment_count';

MySQL 说:文档

#1067 - 'post_date' 的默认值无效

我真的不明白添加整数列对post_date 列有什么影响,除非帖子表中的某些行对post_date 具有无效值,并且 mySQL 会进行某种检查以确保注意到在添加任何内容之前,表格的其余部分是错误的。

【问题讨论】:

  • 你是如何创建表的其余部分的,是否有任何触发器?

标签: mysql phpmyadmin


【解决方案1】:

看起来答案是您必须使用原始 SQL 查询并调整 SQL_Mode 设置。

SET SQL_MODE='ALLOW_INVALID_DATES'; ALTER TABLE wp_posts ADD new_table INT AFTER comment_count

Invalid default value for 'create_date' timestamp field

【讨论】:

    【解决方案2】:

    您忘记定义整数字段的长度/值。它是左起第三列。赋予它价值,你的问题就会得到解决。阅读this了解更多信息。

    【讨论】:

    猜你喜欢
    • 2011-01-10
    • 2023-03-22
    • 2023-04-03
    • 2015-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-21
    相关资源
    最近更新 更多