表的锁定问题

wangmimi 2003-09-12 09:03:06
请问:
当有一人对表t_watch进行操作时(包括select、insert、update行),
不允许其他人对此表作任何操作,直到无人操作此表,怎样实现?
...全文
25 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
changqr 2003-09-14
  • 打赏
  • 举报
回复
其实方法有很多种:
对于有索引的表,在你进行update时会自动锁表的,update时要是没有where条件也会所住全表,有where条件只会锁住满足where条件的行。
lock table
select …… from …… for update [now]等都可以将表锁住。
具体可以看oracle的官方文档sql references。
S海鸥 2003-09-13
  • 打赏
  • 举报
回复
select ..... from table for update nowait
pluto74 2003-09-12
  • 打赏
  • 举报
回复
lock table
后面还有一个参数,你自己查一下,我记不清了
yao_kai 2003-09-12
  • 打赏
  • 举报
回复
1.LOCK TABLE
[schema .] { table | view }
[ { PARTITION ( partition ) | SUBPARTITION ( subpartition ) }
| @ dblink
]
[, [schema .] { table | view }
[ { PARTITION ( partition ) | SUBPARTITION ( subpartition ) }
| @ dblink
]
]...
IN lockmode MODE [NOWAIT];



2.SELECT .... FOR UPDATE.

17,082

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧