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

SqlServer 锁的问题

SQL code:
begin tran
update EB with(rowlock) set Name='abc123' where Code=12 waitfor delay '00:00:13'
commit tran


我用rowlock想锁定一行,可是它把整个表都锁定了。不管我更新哪一条数据都要等这条更新完毕。

怎么才能锁定一条记录啊?
SQL SERVER锁不住一行的,会升级为页级锁或表级锁。

引用
SQL SERVER锁不住一行的,会升级为页级锁或表级锁。


不能锁一行啊?

锁整个表 不太友好吧

update 好像本身会自己加行锁.

Code加上索引再试。

SQL code:
---参考:
◆问题描述
想在检索一批数据的同时,加上更新锁,以禁止其他端末的更新。不是表级,页级加锁,自然而然想到了行级加锁。
但是,发现检索出来的记录以外的数据也被加上锁了。 ◆问题分析
tabale
----------------------------------------------------字段 C1(key1) C2( key2) C3 ............
c1001 c2003 c3001
c1002 c2002 c3001
c1003 c2001 c3001索引 IX_TEST (C2,C1)
----------------------------------------------------用户A,用户B,公用部分SQL
set lock_timeout 0
begin transaction
select * from TEST with (index=IX_TEST,rowlock,updlock)CASE①
用户A
where C1 ='c1003'
结果-- c1003 c2001


相关问答:

mysql 有没有sqlserver的 规则功能

mysql 有没有sqlserver的 规则功能
比如sqlserver的规则如下
create rule [IsSpecial] as @ in ('y','n')

他可以指定字段的值 的 取值范围
用约束可以实现

mysql 中没有这个RUL ......

怎么将带特殊字符的字符串存入sqlserver的某个字段?

Java code:

怎么将像下面的带特殊字符(单引号、百分号,双引号,#号,美元符号......)的字符串存入sqlserver的某个字段?
String mystring="
insert into T_PUB_RZGL(N_RZID,N_RZLX,N_BMDM,N_YGGH,C_RZNR ......

在64位系统上用C语言操作sqlserver数据库的问题

写了一个用C语言操作sqlserver数据库的程序,在我自己的计算机上运行没问题。但到另一台机器上运行时,SQLConnect函数连接数据库失败,仔细检查设置都没有发现问题,但该机器的操作系统是Windows Server 2003 Enterp ......

把一个sqlserver提取的dataset插入到sqlce

数据10W条以上,wm6.5平台,内存有限

C# code:
private void connserver()
{

Cursor.Current = Cursors.WaitCursor;
try
{
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号