易截截图软件、单文件、免安装、纯绿色、仅160KB

学习《Oracle 9i10g编程艺术》的笔记 (十) 锁

 1.在Oracle 中,你会了解到:
事务是每个数据库的核心,它们是“好东西”。
应该延迟到适当的时刻才提交。不要太快提交,以避免对系统带来压力。这是因为,如果
事务很长或很大,一般不会对系统有压力。相应的原则是:在必要时才提交,但是此前不要提
交。事务的大小只应该根据业务逻辑来定。
只要需要,就应该尽可能长时间地保持对数据所加的锁。这些锁是你能利用的工具,而不
是让你退避三舍的东西。锁不是稀有资源。恰恰相反,只要需要,你就应该长期地保持数据上
的锁。锁可能并不稀少,而且它们可以防止其他会话修改信息。
在Oracle 中,行级锁没有相关的开销,根本没有。不论你是有1 个行锁,还是1 000 000
个行锁,专用于锁定这个信息的“资源”数都是一样的。当然,与修改1 行相比,修改1 000 000
行要做的工作肯定多得多,但是对1 000 000 行锁定所需的资源数与对1 行锁定所需的资源数
完全相同,这是一个固定的常量。
不要以为锁升级“对系统更好”(例如,使用表锁而不是行锁)。在Oracle 中,锁升级(lock
escalate)对系统没有任何好处,不会节省任何资源。也许有时会使用表锁,如批处理中,此
时你很清楚会更新整个表,而且不希望其他会话锁定表中的行。但是使用表锁绝对不是为了避
免分配行锁,想以此来方便系统。
可以同时得到并发性和一致性。每次你都能快速而准确地得到数据。数据读取器不会被数
据写入器阻塞。数据写入器也不会被数据读取器阻塞。这是Oracle 与大多数其他关系数据库之
间的根本区别之一。
2.丢失更新
丢失更新(lost update)是一个经典的数据库问题。实际上,所有多用户计算机环境都存在这个问
题。简单地说,出现下面的情况时(按以下所列的顺序),就会发生丢失更新:
(1) 会话Session1 中的一个事务获取(查询)一行数据,放入本地内存,并显示给一个最终用户User1。
(2) 会话Session2 中的另一个事务也获取这一行,但是将数据显示给另一个最终用户User2。
(3) User1 使用应用修改了这一行,让应用更新数据库并提交。会话Session1 的事务现在已经执行。
(4) User2 也修改这一行,让应用更新数据库并提交。会话Session2 的事务现在已经执行。
这个过程称为“丢失更新”,因为第(3)步所做的所有修改都会丢失。例如,请考虑一个员工更新屏幕,
这里允许用户修改地址、工作电话号码等信息。应用本身非常简单:只有一个很小的搜索屏幕要


相关文档:

解决修改计算机名Oracle无法启动的问题

安装Oracle Database(10.0.2)后,如果修改机器名后,
会导致控制面板的服务中启动OracleTNSLisener服务立刻就停止。
使用命令行工具,提示如下:
(机器名原来为:ANSWER-1738E000,改为:ANSWER)
 
解决方法:
1>关掉控制面板中有关于 Oracle Database 的服务。
2>修改 C:\oracle\product\10.2.0\db_1\NE ......

争先体味Oracle 11g的新特点

 跟着这几天Oracle OpenWorld大会的举行,Oracle11g的新特征越来越多的被展现出来。
  以前,我曾经引见过Oracle11g将可能在10月份的这个大会上推出,当初至于Alpha版的信息已经可以见到,现时出现的已经是Beta版,离Oracle11g的正式版已经不远。
  Laurent Schneider 在他的Blog中谈到,对于Oracle11g的名字还 ......

完全卸载Oracle

完全卸载Oracle
软件环境:
1、Windows 2000+ORACLE 8.1.7
2、ORACLE安装路径为:C:\ORACLE
实现方法:
1、 开始->设置->控制面板->管理工具->服务
停止所有Oracle服务。
2、 开始->程序->Oracle - OraHome81->Oracle Installation Products->
Universal Installer
卸装所有Oracle产品, ......

oracle大数据量导入(sqllaoder)

 今天做了1个数据导入需求,文本记录有12万多条,TXT文件大小6M多,因为以前都是用oracle的text import方式导入,刚试验了一下,不灵验,当导入到2万多条的时候,PLSQL就当掉了,走不动了。
 因为考虑到1次导入,所有决定采用SQLLOADER的方式。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号