我需要更改sql表字段的默认值来自' none'到' null'其中数据类型是char varchar longtext等。如果不是' none',我想保留默认值。我需要改变超过500个表。有没有办法这样做?我应该使用PL吗?有没有其他方法可以这样做?提前谢谢。
答案 0 :(得分:1)
我假设您要将none更新为NULL
,并且该列的类型为varchar
update table_name set column = null where column = 'none';
您还需要更新表的模式,需要使用更改将默认值设置为NULL。
答案 1 :(得分:0)
代码是:
ALTER TABLE 'tablename' ALTER COLUMN 'columnname' SET DEFAULT 'none'
首先,我使用此查询从数据库中选择了所有表:
$result = mysql_query("SHOW TABLES FROM 'database'";
使用循环选择所有列:
mysql_fetch_field
然后我运行代码:它有效。感谢每一个试图帮助我的人。