起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 269|回复: 6

【搞定】平台有锁数据表的机制么?**

[复制链接]
发表于 2007-1-17 14:24:02 | 显示全部楼层 |阅读模式
就是一个人操作一个数据表,就把该表锁掉,别人就不能打开
回复

使用道具 举报

发表于 2007-1-18 09:29:10 | 显示全部楼层
楼主,平台没有提供相关的支持。
不过你可以在查询语句中指定加锁:

SELECT   语句中“加锁选项”的功能说明  
   
  SQL   Server提供了强大而完备的锁机制来帮助实现数据库系统的并发性和高性能。用户既能使用SQL   Server的缺省设置也可以在select   语句中使用“加锁选项”来实现预期的效果。   本文介绍了SELECT语句中的各项“加锁选项”以及相应的功能说明。  
   
  功能说明:    
   
  NOLOCK(不加锁)   
   
  此选项被选中时,SQL   Server   在读取或修改数据时不加任何锁。   在这种情况下,用户有可能读取到未完成事务(Uncommited   Transaction)或回滚(Roll   Back)中的数据,   即所谓的“脏数据”。   
   
   
  HOLDLOCK(保持锁)   
   
  此选项被选中时,SQL   Server   会将此共享锁保持至整个事务结束,而不会在途中释放。   
   
   
  UPDLOCK(修改锁)   
   
  此选项被选中时,SQL   Server   在读取数据时使用修改锁来代替共享锁,并将此锁保持至整个事务或命令结束。使用此选项能够保证多个进程能同时读取数据但只有该进程能修改数据。   
   
   
  TABLOCK(表锁)   
   
  此选项被选中时,SQL   Server   将在整个表上置共享锁直至该命令结束。   这个选项保证其他进程只能读取而不能修改数据。   
   
   
  PAGLOCK(页锁)   
   
  此选项为默认选项,   当被选中时,SQL   Server   使用共享页锁。   
   
   
  TABLOCKX(排它表锁)   
   
  此选项被选中时,SQL   Server   将在整个表上置排它锁直至该命令或事务结束。这将防止其他进程读取或修改表中的数据。   
   
   
  使用这些选项将使系统忽略原先在SET语句设定的事务隔离级别(Transaction   Isolation   Level)。   请查阅SQL   Server   联机手册获取更多信息。
回复 支持 反对

使用道具 举报

发表于 2007-1-22 09:46:31 | 显示全部楼层
楼主,还有问题吗?
没有就结贴了!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-1-23 16:57:22 | 显示全部楼层
能写一个例子么?
回复 支持 反对

使用道具 举报

发表于 2007-1-24 14:51:03 | 显示全部楼层
在oracle查询记录时给记录加锁2007年01月24日 星期三 14:39实现方法:

利用SELECT的FOR UPDATE子句实现

conn system/manager

--创建实验用户
grant connect,resource to test identified by test;

conn test/test

--创建实验表1
create table a(a number);
insert into a values(1);
commit;

select * from a for update;

select * from a for update of a.a;(a表的a列)

--新打开一个SQL*Plus窗口
conn test/test(test用户上的第二个会话)
delete from a;

此时,系统停顿状态,等待解锁,
只要在第一个窗口发出roll;或commit;命令,即可解除锁定状态。
回复 支持 反对

使用道具 举报

发表于 2007-1-29 10:14:25 | 显示全部楼层
感谢fgfd0的答复,谢谢!

楼主,5楼的答案可以吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-2 09:58:55 | 显示全部楼层
好吧,结贴把
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2024-12-24 07:07 , Processed in 0.034840 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表