有没有一种简单的方法可以将数据库 SQL 脚本文件分解为每个对象一个文件?
我有 SQL Servers Tasks -> 的输出为一个文件中数据库中的所有表生成脚本...。
有没有一种简单的方法可以将单个 SQL 脚本分解为每个表一个文件?
显然,如果我可以在选择“每个对象文件”设置的情况下运行“生成脚本”任务,我就不会问这个问题。
I have the output of SQL Servers Tasks -> Generate Scripts... for all the tables in my database on one file.
Is there an easy way to break up the single SQL script into one file per table?
Obviously, if I could run the Generate Scripts task with the File per object setting selected, I wouldn't be asking this.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
运行任务->生成脚本任务。在最终向导页面中,选择“脚本到文件”,然后选择“每个对象文件”。您必须为输出指定现有文件夹。
Run Task-> Generate Scripts task. In the final wizard page select "script to file" and select 'File per object'. You must specify an existing folder for the output.
使用 PowerShell。
如果不知道 SQL 文件的格式,这可能有效,也可能无效。它至少应该给你一个起点。它开始写入“table.sql”文件,但后来将该文件重命名为tablename.sql
将第 2 行更改为您当前拥有的任何组合 sql 文件,并在第 9 行中查找适合的任何数据库名称你的脚本。
这是我用于测试的“test.sql”文件的示例。
Using PowerShell.
Without knowing the format of your SQL file this may or may not work. It should at least give you a starting point. It starts writing to the "table.sql" file but later renames the file as tablename.sql
Change line 2 for whatever combined sql file you currently have and line 9 to look for whatever database name is appropriate to your script.
Here is a sample of the "test.sql" file I used for testing.