SQL Server中“加锁选项”的功能说明
1 如何锁一个表的某一行
A 连接中执行
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ
begin tran
select * from tablename with (rowlock) where id=3
waitfor delay '00:00:05'
commit tran
B连接中如果执行
update tablename set colname='10' where id=3 --则要等待5秒
update tablename set colname='10' where id<>3 --可立即执行
2 锁定数据库的一个表
SELECT * from table WITH (HOLDLOCK)
注意: 锁定数据库的一个表的区别
SELECT * from table WITH (HOLDLOCK)
其他事务可以读取表,但不能更新删除
SELECT * from table WITH (TABLOCKX)
其他事务不能读取表,更新和删除
SELECT 语句中“加锁选项”的功能说明
SQL Server提供了强大而完备的锁机制来帮助实现数据库系统的并发性和高性能。用户既能使用SQL Server的缺省设置也可以在select 语句中使用“加锁选项”来实现预期的效果。 本文介绍了SELECT语句中的各项“加锁选项”以及相应的功能说明。
功能说明:
NOLOCK(不加锁)
此选项被选中时,SQL Server 在读取或修改数据
相关文档:
T-SQL Script
Output format
SELECT CONVERT(VARCHAR(100), GETDATE(), 0)
03 6 2010 4:19PM
SELECT CONVERT(VARCHAR(100), GETDATE(), 1)
03/06/10
SELECT CONVERT(VARCHAR(100), GETDATE(), 2)
10.03.06
SELECT CONVERT(VARCHAR(100), GETDATE(), 3)
06/03/10
SELECT CONVERT(VA ......
sql server 临时表的使用 以及给临时表插入主键列
--某时间段内某组服务器的消费排行
CREATE PROCEDURE biling_order_consume
@begin_date datetime,
@end_date datetime
AS
select identity(int,1,1) as ID,charge_credit into #tmp from crm_biling
where @begin_date <= convert(datetime,convert( ......
配置sql server 2000以允许远程访问适合故障:1. 用sql企业管理器能访问sql server 2000(因为它是采用命名管道(named pipes)方式进行方式),但用ado.net 方式(udp)不能访问.2. 采用ado.net方式不能远程访问.故障的可能原因有:1.sql server 2000没有安装sql server 2000 sp3a及以上升级包,还未启用并开放1433端口(udp);2 ......
--ksh下的一个WHILE 循环的例子
integer i=1
while ((i<67))
do
pirnt $i
i=i+1
done
--ksh 下一个FOR循环的例子
for i in `cat listdate.txt`
do
echo "执行 $i "
done
--- date.pl 用于生成一个时间段文件
#!/usr/local/bin/perl
use DBI;
if($#ARGV<1)
{
&nbs ......