C# 连接字符串不正确,如何修复?

C# 连接字符串不正确,如何修复?,c#,.net,visual-studio,C#,.net,Visual Studio,我正在使用visual studio 2017社区,我正在尝试创建本地数据库,连接字符串中有一个问题,因为它在一步一步运行时无法连接,它卡在conn.Open()中 这是连接和ExecuteOnQuery的代码: try { SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS; AttachDbFi

我正在使用visual studio 2017社区,我正在尝试创建本地数据库,连接字符串中有一个问题,因为它在一步一步运行时无法连接,它卡在conn.Open()中

这是连接和ExecuteOnQuery的代码:

           try
            {
                 SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;
                    AttachDbFilename=C:\USERS\OZ\DOCUMENTS\VISUAL STUDIO 2017\PROJECTS\SHILOVI2R\SHILOVI2R\PHONENUM.MDF;
                    Integrated Security=True;
                    Connect Timeout=30;
                    User Instance=True");

                conn.Open();
                SqlCommand cmd = new SqlCommand("insert into phonebook(שם,עיר,כתובת,מספר טלפון,אזור,מספר זיהוי,מחוז,נפה,דת)VALUES('" + rows[0] + "','" + rows[1] + "','" + rows[2] + "','" + rows[3] + "','" + rows[4] + "','" + rows[5] + "','" + rows[6] + "','" + rows[7] + "','" + rows[8] + "') ", conn);
                cmd.ExecuteNonQuery();
                MessageBox.Show("middle2", "SHILOVI2R", MessageBoxButtons.OK);
                Console.WriteLine("Inserting Data Successfully");
                conn.Close();
            }
            catch (Exception e)
            {
                MessageBox.Show("dont_work", "SHILOVI2R", MessageBoxButtons.OK);
                Console.WriteLine("Exception Occre while creating table:" + e.Message + "\t" + e.GetType());
            }
视频图像截图:

整个代码:

    private void button1_Click(object sender, EventArgs e)
    {
        string strFilePat = @"C:\Users\oz\Desktop\sql\backup\tabel3.csv";
        ConvertCSVtoDataTable(strFilePat, strFilePat);
    }

    public static DataTable ConvertCSVtoDataTable(string strFilePath, string conLocoldbString1)
    {
        MessageBox.Show("start", "SHILOV", MessageBoxButtons.OK);

        DataTable dt = new DataTable();

        using (StreamReader sr = new StreamReader(strFilePath))
        {
            string[] headers = sr.ReadLine().Split(',');
            foreach (string header in headers)
            {
                dt.Columns.Add(header);
            }
            while (!sr.EndOfStream)
            {

                string[] rows = sr.ReadLine().Split(',');
                DataRow dr = dt.NewRow();
                for (int i = 0; i < headers.Length; i++)
                {
                    dr[i] = rows[i];
                }
                try
                {
                    SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;
                        AttachDbFilename=C:\USERS\OZ\DOCUMENTS\VISUAL STUDIO 2017\PROJECTS\SHILOV\SHILOV\LOCALDBSHILOV.MDF;
                        Integrated Security=True;
                        Connect Timeout=30;
                        User Instance=True");

                    conn.Open();
                    SqlCommand cmd = new SqlCommand("insert into PhoneTable(??,???,?????,???? ?????,????,???? ?????,????,???,??)VALUES('" + rows[0] + "','" + rows[1] + "','" + rows[2] + "','" + rows[3] + "','" + rows[4] + "','" + rows[5] + "','" + rows[6] + "','" + rows[7] + "','" + rows[8] + "') ", conn);
                    cmd.ExecuteNonQuery();
                    MessageBox.Show("middle", "SHILOVI2R", MessageBoxButtons.OK);
                    Console.WriteLine("Inserting Data Successfully");
                    conn.Close();
                }
                catch (Exception e)
                {
                    MessageBox.Show("dont_work", "SHILOVI2R", MessageBoxButtons.OK);
                    Console.WriteLine("Exception Occre while creating table:" + e.Message + "\t" + e.GetType());
                }
                dt.Rows.Add(dr);
            }
        }
        MessageBox.Show("finish", "SHILOVI2R", MessageBoxButtons.OK);
        return dt;
    }
}
private void按钮1\u单击(对象发送者,事件参数e)
{
字符串strFilePat=@“C:\Users\oz\Desktop\sql\backup\tabel3.csv”;
convertcsvtodatable(strFilePat,strFilePat);
}
公共静态数据表ConvertCSVtoDataTable(字符串strFilePath,字符串conLocoldbString1)
{
显示(“开始”,“SHILOV”,MessageBox按钮。确定);
DataTable dt=新的DataTable();
使用(StreamReader sr=新StreamReader(strFilePath))
{
string[]headers=sr.ReadLine().Split(',');
foreach(标头中的字符串标头)
{
dt.Columns.Add(表头);
}
而(!sr.EndOfStream)
{
string[]rows=sr.ReadLine().Split(',');
DataRow dr=dt.NewRow();
for(int i=0;i

}

如果问题是连接字符串,请使用所附屏幕截图的“属性”选项卡中提供的连接字符串

使用此作为连接字符串,还记得将密码值从“*”替换为实际值。

您会遇到这样的问题:C:\USERS\OZ\DOCUMENTS\VISUAL STUDIO 2017\PROJECTS\SHILOV\SHILOV\LOCALDBSHILOV.MDF,因为我尝试这样编写它,但它也没有打开localdb-->SqlConnection conn=new SqlConnection(@“C:\USERS\OZ\DOCUMENTS\visualstudio 2017\PROJECTS\SHILOV\SHILOV\LOCALDBSHILOV.MDF”);在您的屏幕截图中,连接字符串完全不同(它是一个文件路径而不是一个连接字符串)。该字符串肯定会失败,在代码中发布的一个将给您一条详细的异常消息(如果有)。什么是“connectionstring”“已使用?我想连接到名为phonebook的localdb表PHONENUM是数据库-->这是路径:::-->C:\USERS\OZ\DOCUMENTS\VISUAL STUDIO 2017\PROJECTS\SHILOV\SHILOV\LOCALDBSHILOV.mdfy您可能耗尽了ADO.NET连接池。在每次插入时打开SqlConnection既昂贵又低效。尝试组织代码,这样它将只在循环中执行SqlCommand INSERT,其余将在循环外部执行。(这也包括把它放在外面)