从命令行生成SQL服务器脚本?

在Microsoft SQL Server Management Studio 2008中,“任务”菜单下有一个“生成脚本…”选项。 我只是想知道这个工具是否可以从命令行以某种方式?

生成SQL Server脚本向导的屏幕截图

它看起来类似于可用于SQL Server 2005的sqlpubwiz.exe命令行工具,但是我无法在SQL 2008安装中的任何位置find此可执行文件。

Solutions Collecting From Web of "从命令行生成SQL服务器脚本?"

Management Studio的脚本生成选项只是SMO脚本功能的一个封装。 简单的脚本是通过在各种SMO类型上使用Script()方法获得的。 更复杂的脚本由专门的Scripter类创建。

命令行工具可以通过使用SMO库轻松创建。

我的电脑上的SQL2008 R2的SQLPubWiz.Exe位于“C:\ Program Files(x86)\ Microsoft SQL server \ 90 \ Tools \ Publishing \ 1.4”

SQLPUBWIZ SCRIPT -d yourDBName -S yourserverName -U userName -P userPassword scriptFilewithPath

下载SQL2005 http://www.microsoft.com/downloads/details.aspx?FamilyId=56E5B1C5-BF17-42E0-A410-371A838E570A

您可以使用mssql-scripter,一种为数据库和数据库对象(适用于Windows,MacOS和Linux)生成T-SQL脚本的命令行工具。

mssql-scripter的下载是通过pip,因为它是基于Python的:pip install mssql-scripter

您将运行类似于以下的命令来将数据库模式和数据编写到文件中:$ mssql-scripter -S localhost -d AdventureWorks -U sa –schema-and-data> ./adventureworks.sql更多用法示例: https : //github.com/Microsoft/sql-xplat-cli/blob/dev/doc/usage_guide.md

这个项目可以在这个GitHub仓库中找到 – https://github.com/Microsoft/sql-xplat-cli