如何用c#运行sql server脚本?

时间:2015-05-23 05:49:38

标签: c# sql-server

我正在编写运行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?


什么参考应该添加到项目?

2 个答案:

答案 0 :(得分:3)

这里的问题是缺少对程序集Microsoft.SqlServer.Server的引用,这就是弹出错误的原因。

您可以通过右键单击项目并单击添加引用,仅为该特定程序集添加对项目的引用来解决此问题。这应该打开一个窗口,向您显示所有可用的程序集,然后您可以选择此程序集并将其添加到项目中。

之后,请确保在代码中添加了名称空间,并且应该这样做。

希望这有帮助。

答案 1 :(得分:3)

尝试使用SQLclient连接而不是SqlServer

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

和一些像这样的代码

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