12
返回列表 发新帖
楼主: anthonyfan

关于Oracle下Select语句加锁的问题请教!!!!

[复制链接]
论坛徽章:
2
授权会员
日期:2007-09-19 14:10:06ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
11#
发表于 2007-9-6 13:10 | 只看该作者
Oracle select 是不加锁的,哪怕是用了for update,锁定update。但是不封锁select。select还是照样可以用!
这是Oracle和SQL Server数据一致性读取的机制是不一样的!

使用道具 举报

回复
论坛徽章:
1
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
12#
发表于 2007-9-7 11:48 | 只看该作者
共享下

使用道具 举报

回复
论坛徽章:
0
13#
发表于 2007-9-7 14:19 | 只看该作者

同意7楼的意见

相同条件的select语句返回的结果集对谁都是一样的,没有锁定一说。select  *  from dept for update的作用是,查询出来的结果集在commit或rollback之前不会被其他人修改。

使用道具 举报

回复
论坛徽章:
9
授权会员
日期:2007-06-18 19:35:12会员2007贡献徽章
日期:2007-09-26 18:42:10ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44生肖徽章2007版:牛
日期:2009-05-18 10:35:46祖国60周年纪念徽章
日期:2009-10-09 08:28:00生肖徽章2007版:鸡
日期:2009-11-29 02:28:14ITPUB十周年纪念徽章
日期:2011-11-01 16:23:26
14#
发表于 2007-9-8 09:13 | 只看该作者
今天在其它帖子上看到了一個好的解決辦法,oracle提供了一下動作可滿足lz的需求。
select * from emp where rownum<2 for update skip locked;

也就是for update后加一個skip locked就可滿足需求了!

使用道具 举报

回复
论坛徽章:
4
授权会员
日期:2006-03-20 11:25:44会员2007贡献徽章
日期:2007-09-26 18:42:10ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44生肖徽章2007版:鸡
日期:2008-01-02 17:35:53
15#
发表于 2007-9-11 11:02 | 只看该作者
CREATE TABLE skiplocked_test(n NUMBER,m NUMBER);


INSERT INTO skiplocked_test VALUES(1,2);
INSERT INTO skiplocked_test VALUES(2,3);
INSERT INTO skiplocked_test VALUES(4,3);


COMMIT;


---session 1
SQL> select * from skiplocked_test where n=1 for update ;

         N          M
---------- ----------
         1          2
         
         
----session 2
         
SQL> select * from skiplocked_test for update skip locked;

         N          M
---------- ----------
         2          3
         4          3

使用道具 举报

回复
论坛徽章:
8
授权会员
日期:2006-03-20 10:36:212008新春纪念徽章
日期:2008-02-13 12:43:03ITPUB元老
日期:2008-11-28 13:45:41CTO参与奖
日期:2009-02-12 11:45:48生肖徽章2007版:虎
日期:2009-11-19 16:42:12ITPUB 11周年纪念徽章
日期:2012-10-09 18:06:202013年新春福章
日期:2013-02-25 14:51:24
16#
发表于 2007-9-12 11:20 | 只看该作者

Re: 关于Oracle下Select语句加锁的问题请教!!!!

SQL Server 的select 语句可以锁定吗?我怎么理解为update的时候不能更新阿。只能搜索一下网上了,没有库可以test

使用道具 举报

回复
论坛徽章:
22
2010新春纪念徽章
日期:2010-03-01 11:08:33马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:09
17#
发表于 2007-9-12 17:44 | 只看该作者
select * from tab where xxxx  for update skip locked;

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表