zoukankan      html  css  js  c++  java
  • SQL允许脏读WITH(NOLOCK)

    使用WIHT(NOLOCK)有利也有弊,所以在决定使用之前,你一定需要了解清楚WITH(NOLOCK)的功能和缺陷,看其是否适合你的业务需求,不要觉得它能提升性能,稀里糊涂的就使用它。

    --事务未提交回滚
    BEGIN TRAN
    UPDATE dbo.student SET ca='6666' WHERE no=0
        --COMMIT
        --ROLLBACK
    
    --同一个查询框,不会死锁
    SELECT * FROM dbo.student AS S
    --新开窗口查询会死锁
    SELECT * FROM student 

    ---查询哪个表锁了
    SELECT
    request_session_id spid,
    OBJECT_NAME(
    resource_associated_entity_id
    ) tableName
    FROM
    sys.dm_tran_locks
    WHERE
    resource_type = 'OBJECT' 
    ORDER BY request_session_id ASC
    --锁详细信息
    sp_lock 57
    --锁详细信息
    sp_lock 72

    --新的窗口,使用WITH(NOLOCK)就不会死锁,但会把可能回滚的数据查询出来
    SELECT * FROM student WITH(NOLOCK)

  • 相关阅读:
    Java自学
    java自学
    Java自学
    每日总结
    每日总结
    每日总结
    每日总结
    每日总结
    每日总结
    每日总结
  • 原文地址:https://www.cnblogs.com/lgxlsm/p/10684080.html
Copyright © 2011-2022 走看看