如何使用C#运行SQL Server脚本?

8
我写了下面的代码用于运行SQL Server脚本:
string sqlConnectionString = "Data Source=.;Initial Catalog=behzad;Integrated Security=True";
//string sqlConnectionString = "Data Source=(local);Initial Catalog=AdventureWorks;Integrated Security=True";
FileInfo file = new FileInfo("d:\\behzadBULK.sql");
string script = file.OpenText().ReadToEnd();
SqlConnection conn = new SqlConnection(sqlConnectionString);
Microsoft.SqlServer.Server server = new Microsoft.SqlServer.Server(new ServerConnection(conn));
server.ConnectionContext.ExecuteNonQuery(script);

但是这一行:
Microsoft.SqlServer.Server server = new Microsoft.SqlServer.Server(new ServerConnection(conn));

我遇到了这个错误:
 Are you missing reference?


项目应该添加哪些参考资料?


我添加了 using System.Data.SqlClient; 但是仍然出现错误! - behzad razzaqi
错误信息中显示了什么引用? - Dhrumil
错误是:无法找到类型或命名空间名称“Server”(是否缺少使用指令或程序集引用?)D:\behzad Folder\RAREPORT\WindowsFormsApplication3\WindowsFormsApplication3\Form1.cs 35 13 WindowsFormsApplication3 - behzad razzaqi
1
只需在您的项目中安装对 Microsoft.SqlServer.Server 的引用,如果它现在不存在。并在您的代码中添加一个命名空间即可。 - Dhrumil
请发布您的解决方案,以便我可以点赞。 - behzad razzaqi
显示剩余5条评论
2个回答

3
您的问题是缺少对程序集 Microsoft.SqlServer.Server 的引用,这就是出现该错误的原因。
您可以通过右键单击您的项目并选择添加引用来解决它。这将打开一个窗口显示所有可用的程序集,从中选择此程序集并将其添加到您的项目中。
之后,请确保在您的代码中添加了它的命名空间,这样就可以解决问题了。
希望能帮到您。

3

尝试使用SQLclient连接而不是SqlServer

using System.Data;
using System.Data.SqlClient;

而一些类似这样的代码

settings = System.Configuration.ConfigurationManager.ConnectionStrings["MyTweetConnection"];
ConnectionString = settings.ConnectionString;
SQLCon = new SqlConnection(ConnectionString);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接