2
我正在使用SQL Server CE 3.5和C#与.NET Compact Framework 3.5。在我的代码中,我插入一行,然后开始一个事务,然后从表中删除该行,然后对该事务进行回滚。但是这并不能取消删除。为什么不?这里是我的代码:SQL Server CE回滚不会撤消删除
SqlCeConnection conn = ConnectionSingleton.Instance;
conn.Open();
UsersTable table = new UsersTable();
table.DeleteAll();
MessageBox.Show("user count in beginning after delete: " + table.CountAll());
table.Insert(
new User(){Id = 0, IsManager = true, Pwd = "1234", Username = "Me"});
MessageBox.Show("user count after insert: " + table.CountAll());
SqlCeTransaction transaction = conn.BeginTransaction();
table.DeleteAll();
transaction.Rollback();
transaction.Dispose();
MessageBox.Show("user count after rollback delete all: " + table.CountAll());
的消息表明一切正常,直到最后一刻所在的表具有指示回滚没有撤消删除计数0。
如果DeleteAll正在执行截断,那就是您的问题。 – 2009-10-26 19:23:33