SQL Server 的导出脚本功能真的是开发里挺常用的一招,尤其做备份或者迁移的时候,少不了它的帮忙。
SQL Server Management Studio(简称SSMS)里的“生成脚本”功能就挺好用,能把表结构、数据、索引啥的统统导出来,点几下鼠标就搞定。你打开 SSMS,找到目标表,右键走一波“任务 -> 生成脚本”,照着向导一步步来就行了。
想导数据的话,记得在向导里勾上“包含数据”的选项。如果表数据多,用bcp命令或者Export Data Wizard会更快,毕竟命令行干活还是效率高。
脚本向导里还有个“高级”选项,叫Scripting Options,你可以设置是否带约束、默认值、触发器之类的。迁移到别的环境,这些细节挺关键的,最好别漏。
要是你 T-SQL 写得顺,直接上sp_helptext或者sp_generate_inserts这种存储过程也行。手动掌控,灵活性更高。,sp_generate_inserts是第三方的,需要自己加进去。
搬大工程的,像 Red Gate 家的SQL Compare和SQL Data Compare这些第三方工具就更强了,能自动比对差异、导出增量脚本,挺省事。
导出的文件一般是.sql
,最好用UTF-8 编码,免得出乱码。执行前也别忘了看一下目标数据库版本,版本不一致,语法不兼容。
要是迁移大批量数据,建议把插入操作分批做,别一股脑全塞进去,资源吃不消还容易卡。
对了,导脚本时注意别把敏感数据导出去了,是密码啥的,移完记得更新一波。
如果你也经常要搬数据库、做备份,SSMS 的这个功能可以说是老熟人了。试一试这些技巧,效率和安全性都能上一个台阶。