zoukankan      html  css  js  c++  java
  • SQLSever--事务与索引

    问题抛出:

    当同时执行多条SQL语句时,如果其中一条语句发生错误,而其他语句正常执行了,就会导致数据库数据对不上,怎么办?用事务!

    事务(Transaction)

    概念:事务作为一个逻辑工作单元来执行一系列操作,多个操作为一个整体,要么全部执行,要么全部不执行,保证数据的一致性!

    特性:

    分类:

    显式事务:用BEGIN TRANSACTION明确事务开始。

    隐性事务:

    自动提交事务:

    每个单独的SQL语句都被自动默认为一个事务。

    事务如何工作?

    事务启动时,所有操作先被写到日志,当整个过程没有错误时,则把事务里的所有操作一次性提交;如果执行过程有错误,则会把之前的操作撤销。即使是在事务执行过程中遭到外界原因导致数据库异常,在下次启动数据库的时候也能根据日志内容来完成未完成的操作。

    事务的创建和使用

    基本步骤:

    开始事务:BEGIN TRANSACTION

    提交事务:COMMIT TRANSACTION

    回滚事务:ROLLBACK TRANSACTION

    用@@error来判断是要回滚还是提交。

    代码示例:

    ADO.NET中的事务编写:

    索引

    索引的使用是用来提高查询速度的,等以后有实际需求接触到再来补充!

  • 相关阅读:
    黑客入侵美国一家公司夺走1500万美元?Midge建议你一定要知道
    开始使用AngularJS和ASP。NET MVC -第二部分
    MVC Tempdata,查看并保持混乱
    AngularJS ui-router
    仅限OCR图像的PDF文件。
    FxButton类
    WPF图像按钮100%在XAML
    CFlexiButton类
    一个更好的位图按钮类
    COddButton
  • 原文地址:https://www.cnblogs.com/EasonDongH/p/8030109.html
Copyright © 2011-2022 走看看