首页 > 解决方案 > 无法使用 c# 在 sql server 本地数据库中插入值

问题描述

我无法将数据插入表中。我们正在使用本地数据库。我什至没有任何例外

string constr = ConfigurationManager.ConnectionStrings["server"].ConnectionString;
private void button1_Click(object sender, EventArgs e)
{
  try
  {
    SqlConnection con = new SqlConnection(constr);
    SqlCommand cmd = new SqlCommand("insert into Client_Name(Name) values('" + textBox1.Text + "')",con);
    cmd.Connection = con;
    con.Open();
    cmd.ExecuteNonQuery();
    con.Close();

   }
   catch (Exception ee)
   {
     Console.Write("Exception");
   }
}

在 app.config 中

<connectionStrings>
<add name="server" connectionString="Data Source =          (LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\msm.mdf;Integrated 
Security=True;Connect Timeout=30"                  providerName="System.Data.SqlClient" />
</connectionStrings>

标签: c#sql-server

解决方案


我已经尝试了所有可能的方法,并根据您的情况得到了最佳解决方案。

在一个小时的观察中了解到由于数据库连接持久性问题,您遇到了该问题,尝试下面的代码片段将按预期工作。

            string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\msm.mdf;Connect Timeout=30;Integrated Security=True;";

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

                using (SqlCommand command = new SqlCommand("Insert into [LocalTestTable] values (@name,@description)", _connection))
                {
                    command.Parameters.AddWithValue("@name", "TestFlatName");
                    command.Parameters.AddWithValue("@description", "TestFlatDescription");
                    SqlDataReader sqlDataReader = command.ExecuteReader();
                    sqlDataReader.Close();
                }
                _connection.Close();

            }

希望这将解决您的问题而不会再出现问题。


推荐阅读