我想自动(理想情况下来自批处理文件中的命令提示符)自动生成SQL Server 2008 R2数据库的模式。
在SSMS中,我可以右键单击数据库,选择“任务”,“生成脚本”,然后按照向导生成模式脚本。我可以使用这个过程的命令行版本吗?
答案 0 :(得分:2)
从this answer开始,似乎有一些名为SMOScript和ScriptDB的工具可以做到这一点。
如果您找到没有第三方工具的方法,请分享:)
答案 1 :(得分:2)
微软几周前发布了一个名为mssql-scripter的新工具,它是SSMS中“Generate Scripts”向导的命令行版本。它是一个基于Python的开源命令行工具,您可以找到官方声明here。本质上,脚本编写器允许您为数据库/数据库对象生成一个.sql文件作为.sql文件。您可以生成该文件然后执行它。这可能是一个很好的解决方案,您可以生成数据库的模式(模式是默认选项)。这是一个快速使用示例,可以帮助您入门:
$ pip install mssql-scripter
# script the database schema and data piped to a file.
$ mssql-scripter -S localhost -d AdventureWorks -U sa > ./adventureworks.sql
更多用法示例在我们的GitHub页面上:https://github.com/Microsoft/sql-xplat-cli/blob/dev/doc/usage_guide.md