尝试使用C#连接到Visual Studio 2010中的本地SQL Server数据库时出现问题

本文关键字:Server SQL 数据库 问题 连接 2010 Studio Visual | 更新日期: 2023-09-27 18:26:56

我在尝试连接到本地数据库时遇到问题。我试过这个网站上其他帖子的一些建议,但都没有用。任何帮助都将不胜感激。以下是我到目前为止所拥有的。

private void button1_MouseClick(object sender, MouseEventArgs e)
{
    try
    {
        sConnection = "Server=(localdb)'Database1;Integrated Security=true;";
        dbConn = new SqlConnection(sConnection);
        dbConn.Open();
        sql = "SELECT * FROM Table2 ORDER" +
            "BY Customer name ASC;";
        dbCmd = new SqlCommand();
        dbCmd.CommandText = sql;
        dbCmd.Connection = dbConn;
        dbReader = dbCmd.ExecuteReader();
        while (dbReader.Read())
        {
            aMember = new member(dbReader["Name2"].ToString());
            this.listBox1.Items.Add(aMember);

        }
        dbReader.Close();
        dbConn.Close();
    }
    catch (System.Exception exc)
    {
        MessageBox.Show(exc.Message);
    }
}

尝试使用C#连接到Visual Studio 2010中的本地SQL Server数据库时出现问题

这里有几个问题我能想到。我来解决两个问题。

1.连接字符串

您希望连接到"Database1"作为数据库而不是实例。请先尝试更改连接字符串
更改与此的连接:
string sConnection = "Server=(localdb);Initial Catalog=Database1;Integrated Security=true;";

2.使用语句(它的好处…)


        var sConnection = "Server=(localdb);Initial Catalog=Database1;Integrated Security=true;";
        using (var sqlConn = new SqlConnection(sConnection))
        {
            sqlConn.Open();
            using (var cmd = sqlConn.CreateCommand())
            {
                cmd.CommandText = "SELECT * FROM Table2 ORDER BY [Customer Name]";
                using (var reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        aMember = new member(reader["Name2"].ToString());
                        this.listBox1.Items.Add(aMember); 
                    }
                }
            }
        }

我认为这就是问题所在。

sConnection = "Server=(localdb)'Database1;Integrated Security=true;";

检查此

sConnection = "Server=(localdb)''Database1;Integrated Security=true;";

从.NET Framework 4.5开始,您还可以连接到LocalDB数据库如下:

server=(localdb)''myInstance

请检查文档

如marc_s所述:正确的连接字符串为"Server=(localdb)''v11.0;database=Database1;Integrated Security=true;"