查询修改列为可为空不起作用。

21 浏览
0 Comments

查询修改列为可为空不起作用。

我需要将名为start_date_data_id的列设置为可为空。

我找到了这个答案(修改列为可为空)并尝试按照描述的方法进行操作。

该列的描述: (| 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 服务器版本相对应的手册以获取正确的语法,位置在 'bigint(20) NULL' 附近,位于第 1 行

有人可以告诉我为什么不起作用吗?

0
0 Comments

Query for altering column to be nullable not working

尝试以下代码:

ALTER TABLE attenddb.company_group_user_settings
MODIFY start_date_data_id bigint(20) NULL; 

这个方法可行,谢谢。

如果这是解决方法,请接受。

好的,但还需要等待5分钟。

你的代码无效的原因是你使用了SQL Server的语法,而MySQL使用了不同的语法。

解决方法:

在MySQL中,要将列设置为可为空,应使用以下语法:

ALTER TABLE 表名 MODIFY 列名 数据类型 NULL;

所以,正确的解决方法是将上面的代码修改为:

ALTER TABLE attenddb.company_group_user_settings
MODIFY start_date_data_id bigint(20) NULL;

0