现在一个程序中,多个数据库操作请求,包括insert、select操作,平且insert操作都集中在一个表中,select操作都集中在一个表中,请问2005数据库具备多线程功能吗?能不能处理包括同一时间这么多请求,并且很多集中在一个表中。

解决方案 »

  1.   

    1 如何锁一个表的某一行A 连接中执行SET TRANSACTION ISOLATION LEVEL REPEATABLE READbegin transelect * from tablename with (rowlock) where id=3waitfor delay '00:00:05'commit tranB连接中如果执行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) 
    其他事务不能读取表,更新和删除
      

  2.   

    sql2005都支持n个客户端电脑,每个客户端电脑可以跑m个应用,每个应用可以开p个线程进行数据库操作
    所以这个不是限制限制是许可:同时的连接数量