我想在SMS中创建我的数据库表然后生成一个脚本,以便C#可以程序化地创建表。我目前正在为visual studio中的每个表编写代码。我认为在SQL管理工作室中创建表然后生成一个脚本会更好,所以c#可以在后面执行它。你们有任何想法怎么做吗?
答案 0 :(得分:0)
在SQL Management Studio(2008)中,您可以右键单击数据库,选择“任务”选项,然后选择“生成脚本”选项。向导将引导您为数据库中的任何内容生成脚本或脚本。然后,您可以在C#create tables / procedures / whatever中使用此脚本。
编辑: 以下代码块应该执行带有GO语句的sql脚本(无论如何都在SQL 2008上)
string script = File.ReadAllText("script.sql");
Microsoft.SqlServer.Management.Smo.Server server = new Microsoft.SqlServer.Management.Smo.Server();
server.ConnectionContext.LoginSecure = false;
server.ConnectionContext.Login = "user";
server.ConnectionContext.Password = "pass";
server.ConnectionContext.ServerInstance = "instance";
server.Databases["master"].ExecuteNonQuery(script);