Mysql Alter表可以转换为默认值吗?

标签 mysql sql syntax

ALTER TABLE Table1 ADD COLUMN Created datetime DEFAULT CAST('0001-01-01 00:00:00' AS DATETIME) NOT NULL;

我们的一个提供商正在为 EF 迁移生成此 sql,该语法会引发 mysql 错误。

是否可以在 mysql 中使用强制转换作为默认值?

最佳答案

cast() 是不必要的。该值会自动转换为正确的类型:

ALTER TABLE Table1 ADD COLUMN Created datetime DEFAULT '0001-01-01 00:00:00' NOT NULL;

MySQL 允许使用常量作为默认值,但不允许使用表达式。

关于Mysql Alter表可以转换为默认值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55623466/

相关文章:

MySQL 搜索引擎 - AND 关键字

php - 带值的 MySQL 查询

mysql - 使用变量列名、变量行中的变量值更新 SET PDO

具有日期范围条件的 MySQLi 查询

php - 自动删除 MySQL 中的过期数据行

mysql如何从表中填充缺失的日历月并用组中的先前值填充缺失值

sql - MySQL WHERE 总是需要一个表

syntax - pascal语法错误;预期但。找到了?

python - 如何避免在 Pycharm 中对字符串进行拼写检查

scss 的 vim 折叠语法