【发布时间】:2015-10-28 18:23:44
【问题描述】:
我目前正在尝试使用 C# 程序修改本地数据库。我按照这个例子:https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqltransaction.commit.aspx
问题是在程序运行的时候修改了(比如我增加了一行,我的程序里会看到),但是当我停止程序检查数据库的时候,有没有任何变化 - 数据库与执行前完全相同。
我已经解决这个问题好几天了,还没有找到解决方案。
这是我的作品的摘录:
SqlConnection connectionLocale = new SqlConnection("Data Source=(LocalDB)\\v11.0;AttachDbFilename=|DataDirectory|LocalDB.mdf;Integrated Security=True");
SqlCommand command2 = connectionLocale.CreateCommand();
SqlTransaction transaction;
connectionLocale.Open();
transaction = connectionLocale.BeginTransaction();
command2.Connection = connectionLocale;
command2.Transaction = transaction;
try
{
command2.CommandText = "DELETE FROM Chercheur";
command2.ExecuteNonQuery();
transaction.Commit();
Console.WriteLine("commit ok");
}
catch
{
transaction.Rollback();
}
connectionLocale.Close();
我正在使用带有 .mdf 数据库的 Visual Vtudio 2012。
经过一些研究,我在某处看到连接 (AttachDbFilename=|DataDirectory|LocalDB.mdf) 创建了一个临时数据库,并且所有更改都在这个临时数据库上完成。
如何影响原始数据库而不是这个临时数据库?
【问题讨论】: