不能向SQL Server精简版数据库提交更改
本文关键字:提交 数据库 精简版 SQL Server 不能 | 更新日期: 2023-09-27 18:08:11
我有一个问题,
private void button_Submit_Click(object sender, EventArgs e)
{
try
{
string connectionString = @"Data Source=Database_TouchPOS.sdf;Persist Security Info=False;";
using (SqlCeConnection connection = new SqlCeConnection(connectionString))
{
using (SqlCeCommand command = connection.CreateCommand())
{
connection.Open();
command.CommandText = "INSERT INTO Product (Title,Price,Category_Id) VALUES (@title, @price,@category_Id)";
command.Parameters.AddWithValue("@title", textBox_Title.Text);
command.Parameters.AddWithValue("@price", textBox_Price.Text);
command.Parameters.AddWithValue("@category_Id", comboBox_Category.SelectedIndex);
command.ExecuteNonQuery();
MessageBox.Show("Product Added Successfully...");
}
connection.Close();
}
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
一切正常,就是无法向数据库中添加数据
- 我尝试了完整的数据库路径,例如
c:'project'database.sdf
- 我在问之前做了很多搜索。我看到过类似的问题,但没有一个适合我。
- 在编译时添加数据,但未提交到数据库。我可以看到第二次调试后的数据。
- 请尽量详细解释一下。
谢谢
您可能正面临这个问题,http://erikej.blogspot.com/2010/05/faq-why-does-my-changes-not-get-saved.html建议您在连接字符串中使用数据库文件的完整路径
您是否尝试显式使用事务?
IDbTransaction transaction = connection.BeginTransaction();
//add to database
transaction.Commit(); // before close connection
这是一个非常古老的帖子,所以我不知道如果我把我的答案放上去是否会对任何人有帮助。
我也有这个问题。当我在c#中执行更新或插入代码时,显然一切正常,但当我查看数据库时,没有任何变化。
问题是,在调试时,我在管理工作室中打开了数据库。不知何故,这阻碍了数据库更改,即使没有错误消息。关闭Management Studio并在执行代码后打开它,更改将完美地存储在数据库中。
问候。
完整的例子,为那些像我一样寻求…@"Data Source=C:'Users'MYPC'Documents'Visual Studio 2010'Projects'MyProjectFolder'MyProject-1'bin'Debug'MyDatabase.sdf;Persist Security Info=False;";
感谢这个例子。