我刚刚从MySQL 5.1迁移到MariaDB 10.5一切工作正常,除了我们现在有很多以下错误在我们的PHP应用程序:数据库状态[HY000]:一般错误:1364字段'counter'没有默认值有没有一个配置可以自动修复这个问题?我相信现在默认情况下需要column_default,但是有没有办法在5.1版本上重现MySQL的行为?
column_default
mv1qrgav1#
我假设名称counter的默认值为0,这也假设生成错误的是一个插入SQL语句。因此,要将counter的默认值设为0,请使用ALTER TABLE:
counter
ALTER TABLE tblname ALTER COLUMN counter SET DEFAULT 0;
Alter table还可以更改列的类型以允许NULL,如@Shadow建议的那样:
NULL
ALTER TABLE tablename MODIFY counter INT NULL;
(假设其类型已经为INT,如果需要,请进行调整)。
INT
1条答案
按热度按时间mv1qrgav1#
我假设名称
counter
的默认值为0,这也假设生成错误的是一个插入SQL语句。因此,要将
counter
的默认值设为0,请使用ALTER TABLE:Alter table还可以更改列的类型以允许
NULL
,如@Shadow建议的那样:(假设其类型已经为
INT
,如果需要,请进行调整)。