zoukankan      html  css  js  c++  java
  • sql序列(5)事务

    1,场景:几个操作必须作为同一个单元同时成功或者失败,就应该使用事务

    2,事务的四个属性(ACID):
    原子性:把事务看作是一个单一动作,而不是各个操作的集合
    一致性:事务无论成功与否,都让数据库处于一致状态
    孤立性:每个事务都有明确的界限,一个事务不影响其他运行的事务
    持续性:事务中的数据修改,将永久保持在系统中

    3,事务的描述:
    BEGIN TRANSACTION //开始事务
    COMMIT TRANSACTION //提交事务
    COMMIT WORK
    ROLLBACK TRANSACTION //回滚事务
    ROLLBACK WORK
    SET IMPLICIT_TRANSACTIONS

    4,创建事务
    语句1:
    ================================================
    BEGIN TRANSACTION
    UPDATE USERS SET ID = 2 WHERE ID = 1;
    if(@@error<>0) //判断是否报错如果报错就回滚信息否则提交事务
    BEGIN
    ROLLBACK TRANSACTION
    END
    elseu
    BEGIN
    COMMIT TRANSACTION
    END

    5,使用事务
    语句2:
    ================================================
    try
    {
    SqlTransaction st = null;
    using(SqlConnection con = new SqlConnection(''数据库连接串))
    {
    con.Open();
    st = con.BeginTransaction();
    SqlCommand cmd = con.CreateCommand()
    cmd.CommandText = '<INSERT T-SQL>';
    cmd.TRANSACTION = st;
    SqlCommand cmd_2 = con.CreateCommand()
    cmd_2.CommandText = '<DELETE T-SQL>';
    cmd_2.TRANSACTION = st;
    cmd.ExecuteNonQuery();
    cmd_2.ExecuteNonQuery();
    st.COMMIT();
    }
    }
    catch(Exception ex)
    {
    st.ROLLBACK();
    }









    【附件:】
    1,XML格式展示结果数据:
    语句1:
    ========================================================
    SELECT * FROM USERS FOR XML RAW
    语句2:
    ========================================================
    SELECT * FROM USERS FOR XML RAW, ELEMENTS
    语句3:
    ========================================================
    SELECT * FROM USERS FOR XML AUTO

    2,存储xml流程
    2.1:创建存储xml的表
    语句4:
    ========================================================
    CREATE TABLE XML_L
    (
    XID INT NOT NULL PRIMARY KEY,
    XDOC XML NOT NULL
    )

    INSERT INTO XML_L VALUES(1, '<USERS><USER><ID>1</ID><NAME>L</NAME></USER></USERS>')

    SELECT * FROM XML_L

  • 相关阅读:
    算法技巧之打表
    Python_爬虫_爬取网络图片信息01
    python_爬虫_爬取京东商品信息
    Python——turtle库学习
    Python学习笔记——函数
    131219流水账
    121219流水账
    081219~111219流水账
    071219流水账
    061219流水账
  • 原文地址:https://www.cnblogs.com/namedL/p/8204562.html
Copyright © 2011-2022 走看看