SQL Server 2008的免费架构导出?

Mic*_*tum 4 .net sql-server sql-server-2008

不确定这是属于这里还是属于ServerFault,但我想知道是否有人知道导出SQL Server 2008架构的免费工具?它仅适用于表及其索引,外键等,它需要是一个命令行工具才能作为构建过程的一部分运行.如果它可以读取.net连接字符串,那将是很棒的(因此.net标记)

不需要数据,任何类型的版本控制/差异也是"不错,但不需要".是的,我知道Red-Gate的令人敬畏的SQL Server工具,遗憾的是这是一个0预算的业余爱好项目:-(

Ben*_*n M 5

不确定现成的工具,但它很容易与SMO库(Microsoft.SqlServer.Smo,.SmoEnum,.SqlEnum)一起使用:

using Microsoft.SqlServer.Management.Smo;

var server = new Server("localhost");
var database = server.Databases["databaseName"];
var transfer = new Transfer(database);
var options = new ScriptingOptions();
// set transfer and options object properties to reflect what you want to script:
// i.e. all tables, indexes, triggers, etc.
options.FileName = "c:\\temp\\databaseName_schema.sql";
transfer.Options = options;
transfer.ScriptTransfer();
Run Code Online (Sandbox Code Playgroud)

我使用此方法构建了一个简单的工具,以重新生成我的产品的数据库创建脚本,作为安装构建器中预构建步骤的一部分.