无法从代码连接到SQL Server数据库

时间:2014-02-23 08:04:11

标签: c#

我尝试使用以下代码:

private void button2_Click(object sender, EventArgs e)
{
    string connString = @"Server=localhost;Initial Catalog=Database2;User id=***;Password=***;";

    SqlConnection sqlConn = new SqlConnection(connString);

    string sqlQuery = @"SELECT * from tableP";
    SqlCommand cmd = new SqlCommand(sqlQuery, sqlConn);

    SqlDataAdapter da = new SqlDataAdapter(cmd);
    DataTable table = new DataTable();
    da.Fill(table);

    DataGridView dgv = new DataGridView();
    dgv.DataSource = new BindingSource(table, null);
}

其他信息:

  

发生与网络相关或特定于实例的错误   建立与SQL Server的连接。找不到服务器或   无法访问。验证实例名称是否正确   SQL Server配置为允许远程连接。 (提供者:命名   管道提供程序,错误:40 - 无法打开与SQL Server的连接)

2 个答案:

答案 0 :(得分:2)

在对数据库执行任何操作之前,您需要先打开连接。

sqlConn.Open();

并尝试使用此连接字符串

connectionString="Data Source=localhost;Initial Catalog=Database2; User ID=myUsername;Password=myPassword;"

答案 1 :(得分:0)

试试这个

    private void button2_Click(object sender, EventArgs e)
{
        string connString = 'yourconnectionstring'
        SqlConnection sqlConn = new SqlConnection(connString);
    try
    {

        sqlConn.Open();
        string sqlQuery = @"SELECT * from tableP";
        SqlCommand cmd = new SqlCommand(sqlQuery, sqlConn);
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        DataTable table = new DataTable();
        da.Fill(table);
        DataGridView dgv = new DataGridView();
        dgv.DataSource = new BindingSource(table, null);
    }
    catch (Exception)
    {

        SqlConn.Close();
    }
    finally
    {
        SqlConn.Close();
    }
}