任何人都能提供一个生成的示例sql脚本吗
有人能帮我吗。有没有一种方法可以创建一个脚本,为已有数据的表生成插入语句?
有一个表有这样的结构->Country[id(int pk),name(nvarchar)]生成这样的输出的脚本会是什么样子?
输出:
INSERT INTO country (NAME) VALUES ('canada');
INSERT INTO country (NAME) VALUES ('england');
INSERT INTO country (NAME) VALUES ('italy');
INSERT INTO country (NAME) VALUES ('spain');
这将实现您想要的功能:
select concat ("insert into `Country` (`country`) values ("", country, "");") from Country order by id;
样品:http://sqlfiddle.com/#!2/efb4c/2
然而,您当然需要根据您的模式对其进行调整。
如果您想将现有数据再次插入到表中(正如您在问题中提到的),那么您可以编写一个类似于的sql
INSERT INTO country (NAME) SELECT NAME FROM COUNTRY;
您可以使用mysqldump来归档您所要求的内容,请尝试以下操作:
mysqldump -u username -ppassword --skip-triggers --compact --no-create-info --extended-insert=FALSE databasename tablename1 tablename2 ...
如果您有巨大的表,请记住,单个插入将比扩展插入慢。
另请参阅mysqldump上的文档:mysqldump--数据库备份程序