ASP.NET里的事务处理
核心提示:事务是1组组合成逻辑工作单元的数据库操纵,固然系统中可能会出错,但事务将控制和保护每个数据库的1致性和完全性。
事务是1组组合成逻辑工作单元的数据库操纵,固然系统中可能会出错,但事务将控制和保护每个数据库的1致性和完全性。假设在事务进程中没有碰到毛病,事务中的所有修改都将永久成为数据库的1部份。假设碰到毛病,则不会对数据库作出任何修改。
例如,在1个银行利用程序中,假设资金从1个帐户转到另1个帐户,则会将1定的金额记进1个帐户的贷方,同时将相同的金额记进另1个帐户的借方。由于计算机可能会由于停电、网络中断等缘由此出现故障,所以有可能更新了1个表中的行,但没有更新相干表中的行。假设数据库支持事务,则可以将数据库操纵组成1个事务,以避免因这些事件而使数据库出现不1致。
在 ADO.NET 中,可使用 Connection 和 Transaction 对象来控制事务。若要履行事务,请履行以下操纵:
调用 Connection 对象的 BeginTransaction 方法来标记事务的开始。BeginTransaction 返回对 Transaction 的援用。请保存此援用,以便将其分配给在事务中登记的 Command。
将 Transaction 对象分配给要履行的 Command 的 Transaction 属性。假设通过活动的 Transaction 对象对 Connection 履行 Command,但该 Transaction 对象还没有分配给 Command 的 Transaction 属性,则将引发异常。
履行所需的命令。
调用 Transaction 对象的 Commit 方法来完成事务,或调用 Rollback 方法来取消事务。
以下代码示例使用 Microsoft? SQL Server? 上的 ADO.NET 来演示事务逻辑。
以下为援用的内容: SqlConnection myConnection = new SqlConnection("Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI;"); // 为事务创建1个命令 |
TAG:数据库,帐户,可能会,对象,事务
评论加载中...
|