使用c#连接到数据库时出错

时间:2015-07-16 10:55:26

标签: c# sql

这段代码有什么问题吗?请帮帮我。

protected void Button_Click(object sender, EventArgs e)
{
        string cs = "Data Source=SFSIND0402;Initial Catalog=TestDB;Integrated Security=SSPI;Provider=Microsoft.ACE.OLEDB.12.0";
        OleDbConnection conn = new OleDbConnection(cs);
        conn.Open();
        OleDbCommand insert = conn.CreateCommand();
        insert.CommandText="insert into Employee(ID, Name, Sex, Salary) values('003','Vedpathi','M',25000)";
        insert.Connection = conn;
        insert.ExecuteNonQuery();
        conn.Close();
}

我收到以下错误:

多步OLE DB操作生成错误。检查每个OLE DB状态值(如果可用)。没有工作

(第22行:conn.Open();)

2 个答案:

答案 0 :(得分:3)

连接到MS SQL数据库时,请使用MS SQL提供程序:

using (var connection = new SqlConnection(connectionString))
{
  connection.Open();

  var cmd = new SqlCommand(commandText, connection);
  cmd.ExecuteNonQuery();
}

答案 1 :(得分:1)

除了提到的解决方案Luaan之外,您还应该将连接字符串存储在应用的配置文件中,并对其进行加密。

即使您在与数据库通信时使用SSL加密,如果他/她在他/她的计算机上运行应用程序,那么不合格的人也可以提取字符串变量。