上个月我从mysqldump数据库获得了一个sql文件。现在,在数据库中的所有表都添加一个额外的列,说:mysql:为插入设置列默认值
country varchar(20) not null.
如何导入转储文件与国家数据库设置为“美国”?该数据库有来自其他国家的数据,因此数据库不能被删除和重新创建。
手动我需要做两两件事来转储SQL文件:
1. remove all create table statements,
2. add country("US") to all insert statements.
但SQL转储文件是巨大的。有没有一个很好的方法来实现这一目标? 谢谢。
的转储文件不包含列'country',对不对?你想在所有的值为'US'的表中添加'country'列吗?我对吗? – 1000111
执行此操作的最简单的方法可能是为“country”列设置默认值,但这需要您可以发出“ALTER TABLE”语句,并且值“US”对每个人都是可取的。 –
我会找到与此相关的N个表,将转储复制到另一个文件名。使用find-and-replace-all将这些表名调整为那些N的新表名。注意,这些将是新的表名。运行该脚本。现在你的数据库有N个只有美国的新表。继续。继续意思是你之后的意思是做什么(比如,插入其他表格?插入到其他表格上?美国作为插入文字?) – Drew