+ -
当前位置:首页 → 问答吧 → TDATABASE 属性 DATABASENAME 与 SESSION 事务的关系

TDATABASE 属性 DATABASENAME 与 SESSION 事务的关系

时间:2011-11-09

来源:互联网

请问:TDATABASE 的属性 DATABASENAME 与 SESSION 和 事务 有什么关系吗???
  有两个TDATABASE 假设他们的DATABASENAME 为 D1 D2,他们指向一个相同的ORACLE数据库,那么如果D1给某张表加锁后 
  (加锁方式:LOCK TABLE tablename IN EXCLUSIVE MODE),那么,此时(加锁后)D2 还可以访问加锁的表么?
  为什么?
  求指点~ 谢谢大家

作者: named_fish   发布时间: 2011-11-09

去去了 是题目太给力了么 怎么没有人回复阿 ??  
自己顶起来!!!
问题不难把。。。。。

作者: named_fish   发布时间: 2011-11-10

tdatabase这东东太没用过,貌似已经被ado替代了吧
作为替代品的adoconnection控件自己默认有事物,例如adoquery打开创建事物 执行完毕立即commit事物,另外adoconnection可以创建事物

数据库的锁有很多种
共享 (S) 用于不更改或不更新数据的操作(只读操作),如 SELECT 语句。 
更新 (U) 用于可更新的资源中。防止当多个会话在读取、锁定以及随后可能进行的资源更新时发生常见形式的死锁排它 (X) 用于数据修改操作,例如 INSERT、UPDATE 或 DELETE。确保不会同时同一资源进行多重更新。
--你代码中的锁就是这个类型
 
意向锁 用于建立锁的层次结构。意向锁的类型为:意向共享 (IS)、意向排它 (IX) 以及与意向排它共享 (SIX)。 
架构锁 在执行依赖于表架构的操作时使用。架构锁的类型为:架构修改 (Sch-M) 和架构稳定性 (Sch-S)。

作者: funxu   发布时间: 2011-11-10