将列更改为可为空的查询不起作用[重复]
Posted
技术标签:
【中文标题】将列更改为可为空的查询不起作用[重复]【英文标题】:Query for altering column to be nullabe not working [duplicate] 【发布时间】:2019-09-17 10:12:54 【问题描述】:我需要将名为 start_date_data_id
的列设为可为空。
我找到了这个答案 (Altering a column to be nullable) 并尝试按照描述的方式进行操作。
该列的说明: (| start_date_data_id| bigint(20)| NO | MUL | NULL | |
)。
查询:
ALTER TABLE attenddb.company_group_user_settings
ALTER COLUMN start_date_data_id bigint(20) NULL;
错误:
ERROR 1064 (42000):您的 SQL 语法有错误;检查 与您的 mysql 服务器版本相对应的手册 在第 1 行的“bigint(20) NULL”附近使用的语法
谁能告诉我为什么它不起作用?
【问题讨论】:
@Ronald Aaronson 我试过了,但发生了同样的错误。 您引用的问题中接受的答案是针对 ms sql server(它是这样说的)。如果您在答案中向下滚动一点,您也会找到 mysql 特定的答案。无论如何,在另一个仅针对 mysql 的问题中链接,以避免误解。 【参考方案1】:试试这个:
ALTER TABLE attenddb.company_group_user_settings
MODIFY start_date_data_id bigint(20) NULL;
【讨论】:
这行得通,谢谢。 如果这是解决方案,请接受它 我会的,但需要再等 5 分钟。 你的代码不工作的原因是因为你使用的是 SQL Server 语法,而 MySQL 使用了不同的语法。以上是关于将列更改为可为空的查询不起作用[重复]的主要内容,如果未能解决你的问题,请参考以下文章