`
v5qqcom
  • 浏览: 1315958 次
文章分类
社区版块
存档分类
最新评论

锁定数据记录

 
阅读更多
锁定数据记录

ADO组件有一个非常好的属性LockType,可用于锁定记录,这样当一个更新开始之前可以去检查这个属性,如果还在锁定状态,则需要等待,以避免更新冲突.该属性具体说明如下:

LockType 属性

指示编辑过程中对记录使用的锁定类型。

设置和返回值

设置或返回以下某个 LockTypeEnum 的值。

常量 说明
adLockReadOnly 默认值,只读。无法更改数据。
adLockPessimistic 保守式记录锁定(逐条)。提供者执行必要的操作确保成功编辑记录,通常采用编辑时立即锁定数据源的记录的方式。
adLockOptimistic 开放式记录锁定(逐条)。提供者使用开放式锁定,只在调用 Update 方法时锁定记录。
adLockBatchOptimistic 开放式批更新。用于与立即更新模式相反的批更新模式。


说明

打开 Recordset 前设置 LockType 属性可指定打开时提供者应该使用的锁定类型。读取该属性可返回在打开的 Recordset 对象上正在使用的锁定类型。Recordset 关闭时 LockType 属性为读/写,打开时该属性为只读。

提供者可能不支持所有的锁定类型。如果某提供者不支持所需的 LockType 设置,则将替换为其他类型的锁定。要确定 Recordset 对象可用的实际锁定功能,请通过 adUpdate 和 adUpdateBatch 使用 Supports 方法。

如果 CursorLocation 属性被设置为 adUseClient,将不支持 adLockPessimistic 设置。设置不支持的值不会产生错误,因为此时将使用支持的最接近的 LockType 的值。

远程数据服务用法 当在客户端 (ADOR) 的 Recordset 对象上使用时,LockType 属性只能设置为 adLockOptimisticBatch。

注:
更新数据前最后使用事务:
ADOConnection.BeginTrans;// 开始一个事务
try
// 在这里写更新数据库语句.
ADOConnection.CommitTrans // 提交一个事务
except
ADOConnection.RollbackTrans; // 事务失败则回滚事务,放弃所有更新操作
end;


分享到:
评论

相关推荐

    行业分类-设备装置-到受多个请求者的读取和写入访问影响的共享数据记录的访问的验证.zip

    1. **锁定机制**:通过锁定数据记录来防止多个请求者同时修改。这包括读锁(共享锁)和写锁(排他锁)。读锁允许多个请求者同时读取,但不允许写入;写锁则阻止其他任何请求者的读取和写入。 2. **乐观锁**:在读取...

    记录一下MySql update会锁定哪些范围的数据.doc

    了解它会锁定哪些数据对于并发控制和事务处理至关重要,以避免数据冲突和不一致。 2、**前置知识** - **数据库的隔离级别**: MySQL默认的隔离级别是可重复读(REPEATABLE-READ),这会影响锁定策略。其他隔离...

    参考资料-228土层锚杆张拉和锁定记录.zip

    从这个文件名我们可以推测,这份文档可能详细记录了某个工程项目的土层锚杆张拉和锁定的过程数据。土层锚杆是建筑工程中一种常见的地基加固技术,用于稳定边坡、地下结构或地面建筑。在施工过程中,张拉和锁定是关键...

    记录被另一个用户锁住解决方法

    在Oracle数据库环境中,当尝试删除数据时遇到“记录被另一个用户锁住”的错误,这通常是由于并发事务控制机制导致的。Oracle使用了一种称为多版本并发控制(MVCC)的机制来确保数据的一致性和完整性,其中包括行级...

    记录被另一个用户锁定.txt

    在Oracle数据库中,当多个用户尝试同时更新同一数据记录时,可能会出现锁定冲突的问题。这种情况下,如果一个用户的事务已经锁定了某些记录,而其他用户试图修改这些记录,则后者将不得不等待,直到前者的事务完成或...

    计算机软件-商业源码-261 提示数据库正在使用.zip

    2. **锁定**:数据库通过锁定数据记录或整个表来防止并发冲突。有多种类型的锁,如共享锁(读锁)、排他锁(写锁)、行级锁、页级锁和表级锁等。共享锁允许读取,但阻止写入;排他锁阻止其他用户读取或写入。 3. **...

    iPhone DataGrid 数据列表组件,支持行列锁定

    "iPhone DataGrid 数据列表组件,支持行列锁定" 是一个专为iPhone设计的高效数据展示解决方案,它优化了用户界面,使得用户可以更方便地浏览和操作表格数据。 首先,我们要理解DataGrid组件的基本概念。DataGrid...

    C#锁定程序项目winform锁定界面

    锁定界面的功能对于保护用户隐私、防止未经授权的访问以及在多用户环境中保持数据安全非常重要。 1. **锁定界面的概念** - 锁定界面是一种安全措施,它允许用户在离开计算机或不再与程序交互时暂停程序的操作,...

    SQLServer和Oracle防止数据锁定的比较 .txt

    3. **快照隔离级别**:Oracle引入了快照隔离级别,使得读取操作不会锁定数据,从而减少了锁定等待时间。 4. **UNDO表空间管理**:Oracle通过UNDO表空间管理来记录事务的更改前状态,这样即使在长时间运行的事务中也...

    智能网联汽车 自动驾驶数据记录系统

    【智能网联汽车 自动驾驶数据记录系统】是针对配备自动驾驶功能的M和N类车辆的一项技术标准,旨在确保这些车辆在运行过程中数据记录的安全、可靠和有效性。该系统需符合一系列的技术要求和试验方法,以确保在自动...

    基站锁定锁定联通WCDMA基站教程

    然而,需要注意的是,长期锁定在一个基站可能导致数据速度变慢,因为基站可能承载过多的用户。此外,锁定基站可能会影响紧急呼叫功能,因为手机不再自动寻找信号最强的基站。因此,只有在确实需要增强3G连接稳定性时...

    j2me数据记录库的源代码

    在 J2ME 中,数据记录库(Record Management System,RMS)是用于存储应用程序数据的一个简单但实用的机制。RMS 提供了类似于数据库的功能,但其设计是为了适应资源有限的移动环境。 标题“j2me数据记录库的源代码...

    VB锁定Access数据库中的某条记录

    摘要:VB源码,数据库应用,锁定记录 VisualBasic6.0程序锁定Access数据库中的某条记录,需要在程序中设置orders.mdb的路径,然后执行。源码爱好者已经帮您修正了数据库路径,你中需将下载的源码重新编译即可运行本...

    巧用SQL脚本解决财务软件数据锁定的问题.pdf

    通过直接修改用友后台数据库中的数据,比如删除锁定记录或解锁数据,可以快速解除数据锁定,确保实验教学的顺利进行。 文章中提到的具体SQL脚本的应用方法和解决步骤没有详细展开,但可以从以下几个角度出发来解决...

    ACCESS数据库锁定问题.pdf

    默认记录锁定选项包括“不锁定”和“使用记录级锁定”。不锁定意味着所有用户可以同时读取记录,但可能会导致并发问题。取消“使用记录级锁定”可以减少锁定,但可能会增加并发错误的风险。 2. **并发错误类型**: ...

    MITSUBISHI三菱QnUDVCPU_LCPU用户手册(数据记录功能篇).pdf

    【 Mitsubishi 三菱 QnUDVCPU/LCPU 数据记录功能篇】用户手册主要涵盖了与安全相关的注意事项和设计要点,适用于多种型号的 CPU 模块。在使用这些产品之前,用户必须充分理解并严格遵循手册中的指导,以确保操作安全...

    挂机锁定挂机锁定挂机锁定

    对于挂机锁定的安全性,它并非万无一失,因为有些攻击手段可能绕过挂机锁定,比如键盘记录器或恶意软件。因此,配合其他安全措施,如强密码策略、双因素认证等,才能提供更全面的保护。 总的来说,挂机锁定是现代...

    SQL语句删除数据表中重复的记录

    在数据库管理中,有时我们需要确保数据表中的记录是唯一的,避免重复数据导致的不一致性和冗余。在SQL中,可以使用特定的查询语句来删除重复的记录,以保持数据的整洁和准确。以下是如何使用SQL语句来删除数据表中...

    一种基于文本相似度计算的数据记录装置的制作方法.docx

    该文档介绍的是一种基于文本相似度计算的数据记录装置的制作方法,主要目的是提高数据记录的安全性和使用便捷性。以下是对该技术的详细说明: 1. 数据记录装置的结构设计: - 装置包括一个箱体,箱体内设有可活动...

    PLSQL中记录被另一个用户锁住的原因及处理方法.txt

    1. **未提交的事务**:如果一个用户启动了一个事务,并且对某些记录进行了更改但尚未提交,那么这些记录就会被锁定,直到事务结束(即通过`COMMIT`或`ROLLBACK`命令)。 2. **长时间运行的查询**:某些查询可能因为...

Global site tag (gtag.js) - Google Analytics