Mysql 将现有列更改为默认值的语法

Mysql syntax for alter existing column to default

我已经尝试按照查询来更改具有默认 getdate 约束的现有列

ALTER TABLE PartyTypes ALTER COLUMN CreatedDate GetDate();
ALTER TABLE partytypes ADD CONSTRAINT DF_Constraint DEFAULT GetDate() FOR CreatedDate;

两者都出错

ALTER TABLE partytypes ADD CONSTRAINT DF_Constraint DEFAULT GetDate() FOR CreatedDate Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DEFAULT GetDate() FOR CreatedDate' at line 1 0.000 sec

关于此的任何更新

您没有指定任何外国 table。

约束是外键,而不是对列值的限制。您可能想要使用的是触发器或将默认设置为 now():

ALTER TABLE PartyTypes CHANGE COLUMN CreatedDate CreatedDate datetime NOT NULL DEFAULT NOW();

请务必提供两次列名,以免重命名。

有关 ALTER TABLE 语法的更多信息,请参阅 MySQL manual