【发布时间】:2023-03-09 11:37:02
【问题描述】:
我在 Visual Studio Express 2012 中将 C# 用于 WPF 应用程序。我按照找到的教程 here。
我创建了一个testDb.mdf 本地基于服务的数据库。我打开应用程序,输入文本,点击添加,数据添加到数据库中。我只知道这一点,因为我将一个字段设置为主键并且是唯一的。如果我再次尝试添加相同的内容,我会收到一条错误消息,指出它已经存在。
当我退出我的应用程序时,数据库中没有任何显示。我输入的数据不见了。为什么数据不是永久的?
这是我用于单击按钮的代码:
private void Add_Click(object sender, RoutedEventArgs e)
{
SqlConnection cn = new SqlConnection(global::testdb.Properties.Settings.Default.testDBConnectionString);
try
{
string sql = "INSERT INTO Test (TestInsert) Values('" + txtName.Text + "')";
SqlCommand cmd = new SqlCommand(sql, cn);
cn.Open();
cmd.ExecuteNonQuery();
MessageBox.Show("Added new record", "Message", MessageBoxButton.OK);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,"Error", MessageBoxButton.OK);
}
finally
{
cn.Close();
}
}
连接字符串:
<connectionStrings>
<add name="testdb.Properties.Settings.testDBConnectionString"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\testDB.mdf;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
【问题讨论】:
-
你如何检查你的桌子?
-
可能跟交易有关。
-
不正常吗?如果我清楚地理解,您可以尝试在表中添加另一个具有相同值的主键。
-
你不能在PK字段列中添加相同的东西,相同的值
-
请出示您的连接字符串