`
dreaminjava
  • 浏览: 35681 次
  • 性别: Icon_minigender_1
  • 来自: 武汉→北京→武汉
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

关于锁表与批量修改冲突问题。。

阅读更多
是这样,使用的是oracle数据库,有一张账户表td_chl_acct,每次操作这个表的时候,都会在 td_chl_acctlock表插条数据,使用完毕后清除这条数据,当这个表里面有操作流水的时候,其他人都无法操作td_chl_acct这个账户。

但是现在又一个新的需求,需要批量的操作td_chl_acct这个账户表,是多线程的并发,但是这个一旦锁住其他的操作全部失败,也就是说每次批量操作只有第1条才成功了。

我有一个方法:使用一个死循环判断td_chl_acctlock是否被锁住,一直循环到未锁住的时候再跳出来,但是这样紧紧理论上可行,实际当中会照成某些操作永远的循环下去。


请问大家有什么好的办法吗?在线等待。。
1
2
分享到:
评论
2 楼 dreaminjava 2009-10-28  
ddandyy 写道
批量操作前对数据排序

后面的会wait 但是绝对不会dead lock

怎么对数据排序?
1 楼 ddandyy 2009-10-28  
批量操作前对数据排序

后面的会wait 但是绝对不会dead lock

相关推荐

    MYSQL锁表问题的解决方法

    本文将介绍几种解决MySQL锁表问题的方法。 1. **查看并杀死锁定进程** 使用`SHOW PROCESSLIST`命令可以查看当前所有正在执行的SQL语句及其状态,包括是否被锁定。如果发现有锁定的进程,可以使用`KILL`命令来终止...

    informix锁表相关

    2. 表级锁:当需要锁定整个表进行操作时,如结构更改或批量数据导入,表级锁是必要的。表级锁也有共享和独占之分,共享表锁(IS 锁)允许读取整个表,但不允许修改;独占表锁(IX 锁)则允许读取和修改整个表,排斥...

    VS文件批量解锁工具_免安装版.rar

    VS文件批量解锁工具是一款专为Visual Studio(VS)用户设计的实用程序,旨在解决在开发过程中遇到的文件锁定问题。在编程过程中,由于VS的自动编译和调试机制,有时会遇到某些文件无法删除或修改的情况,这时就需要...

    SAP ABAP应用程序中"锁"的介绍

    这种逻辑锁机制并不直接与数据库级别的锁关联,而是通过在系统主内存中的锁表来实现。当ABAP程序需要操作数据时,必须先调用相应的加锁函数模块(Function Module, FM),这样即使直接操作数据库,也会受到SAP锁机制...

    Oracle分区表和锁的应用

    - **表级锁(TABLE LOCK)**:锁定整个表,适用于全表扫描或批量操作。 - **行级意向锁(INTENTION LOCKS)**:用于多粒度锁定,表明接下来的锁定将是行级或表级。 2. **锁模式**: - **共享锁(SHARE LOCK)**...

    552写锁及 授权

    在多用户环境中,写锁能确保数据的正确性,防止多个用户同时修改同一条记录,造成数据冲突。此外,它也是乐观锁和悲观锁策略中的重要组成部分。乐观锁假设很少发生并发冲突,只在提交时检查冲突;而悲观锁则在开始...

    INFORMIX使用锁技术

    锁机制确保了数据的一致性和完整性,防止了多个用户同时修改同一数据导致的冲突。INFORMIX 支持复杂且可扩展的锁策略,以适应不同场景的需求。 在INFORMIX中,主要有三种类型的锁: 1. **SHARED 锁**:也称为共享...

    oracle数据库锁使用

    - **排它锁**则用于需要独占访问数据的场景,例如数据的批量修改或删除。 - **行级锁**适用于高并发环境下的数据访问,可以减少锁的竞争,提高系统的整体性能。 - **行级排它锁**适合于需要更新或删除少量行的情况。...

    DB2锁相关情况介绍

    锁在多用户环境中至关重要,它能避免多个事务同时修改同一数据导致的数据冲突。 #### 二、DB2中的锁类型与模式 DB2支持多种锁类型,每种锁类型对应不同的访问级别,以适应不同的并发需求: - **行级锁**:针对...

    浅析SQL Server数据库事务锁机制.pdf

    6. 批量修改锁(Bulk Update Lock):在批量复制数据时使用,可以通过表的TABLOCK提示或者使用系统存储过程sp_tableoption的“tablelockonbulkload”选项设定批量修改锁。 锁冲突及其防止办法也是事务锁机制的重要...

    oracle数据库中的锁机制

    例如,在执行大型批量操作或在表上执行DDL(数据定义语言)操作时,可能会使用表级锁。这可以防止其他事务对表进行任何修改。 3. **模式对象锁**:除了数据行和表之外,Oracle还提供对数据库模式对象(如视图和索引...

    深思-532写锁及授权

    在IT行业中,尤其是在数据库管理和系统安全领域,"写锁"是一个关键的概念,它与权限管理密切相关。"深思-532写锁及授权"这个主题聚焦于如何在特定环境中,比如广联达532系统,有效地实施写锁机制并进行权限控制。 ...

    MySQL与Java锁的学习

    本主题聚焦于“MySQL与Java锁的学习”,这是一门深入理解如何在数据库层(MySQL)和应用层(Java)处理并发问题的关键技能。下面我们将详细探讨MySQL中的锁机制以及Java如何与之协同工作。 **MySQL中的锁** MySQL...

    批量更新两种方法实践

    同时,需要注意的是,批量更新可能会引发并发控制和数据一致性问题,因此需要正确设置事务隔离级别,并考虑使用乐观锁或悲观锁来防止数据冲突。 综上所述,“批量更新两种方法实践”涵盖了SQL语句的直接操作和利用...

    ASPNET批量更新

    考虑到批量更新可能引发的锁竞争,可以调整SQL查询,如避免全表扫描,使用索引,或者在低并发时段执行更新操作。 9. 批量删除: 除了更新,批量删除也是常见的需求。这可以通过类似的方式实现,如执行单个删除...

    informix数据库表记录加解锁的常用方法

    而ROLLBACK则回滚事务,取消所有更改,记录的锁也会被释放。 5. **隐式锁定**:在默认的隔离级别下,Informix使用隐式锁定。这意味着在INSERT、UPDATE和DELETE操作时,系统会自动对涉及的记录加锁,直到事务结束。 ...

    TortoiseSVN锁的使用

    在协同开发环境中,为了防止多人同时编辑同一文件导致的冲突,TortoiseSVN 引入了锁机制,即 "lock" 功能,以确保单一用户对文件进行修改。 1. **锁机制(Locking)**: - **get-lock**:在编辑文件前,你可以通过...

    浅谈MS-SQL锁机制

    6. **批量更新锁** (Bulk Update Lock, BU):这种锁用于批量操作,如BULK INSERT或SELECT INTO,以提高性能。 7. **行级锁** 和 **页级锁**:这些锁是更细粒度的锁,行级锁仅锁定特定行,而页级锁锁定包含目标数据...

    MySQL行级锁、表级锁、页级锁详细介绍

    共享锁允许读取一行,而排他锁则允许读取和修改一行。行级锁在并发高、数据更新频繁的场景下非常有效,但可能会占用更多的系统资源。 2. **表级锁**:表级锁(Table-Level Locking)一次性锁定整个表,例如MyISAM和...

Global site tag (gtag.js) - Google Analytics