我需要在读写一个表的时候琐住它
但是不知道在sql中如何锁住
比如我想在执行
insert into gao (...) values(...)
的时候锁住, 我该怎么办?
但是不知道在sql中如何锁住
比如我想在执行
insert into gao (...) values(...)
的时候锁住, 我该怎么办?
解决方案 »
- 关于继承CListCtrl的类的Edit成员在CDialog中的回车问题
- 关于wParam和lParam的疑问
- 模拟回车按键自动关闭消息框的弹出窗口
- 【···CSDN开放可用分捐赠,以后又可以狂送可用分了···】
- 通过offset地址确定引起崩溃的代码行【俺想长点信誉分】
- 关于STATIC控件在对话框上摆放的字体设置问题!!
- 如何在两个对话框之间传送变量
- 这个参数该怎么写?(const VARIANT& Index)
- 关于SOCKET中的RECV和SEND缓冲区和LISTEN()的问题
- 如何改变propertysheet控件的背景色?急求!!!
- 声明模板类的友元的困惑?请各路大侠指路!!
- 如何让自定义的数据类型在各个类中都能使用?
就想处理线程的同步问题一样。
我想在sql语句中如此
因为别人也可能操作那个表
不一定通过我写的程序
我就另写了个sql存储过程
让大家都调用这个存储过程
这个里面需要锁住那个表
的确可以办到,可以通过SQL语句(我记不清了),去数据库版问问
select * from table for update of table.column锁住列
select * from table for update table 锁住表
SQL的Books Online
上有说明白的
ado本身就带这种功能吧
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ
GO
BEGIN TRANSACTION
GO
SELECT * FROM authors
GO/* Example 2 */
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ
GO
BEGIN TRANSACTION
GO
DECLARE abc CURSOR STATIC FOR
SELECT * FROM authors
GO
OPEN abc
GO将事务隔离级别设为可重复读取意味着:Example 1 中的独立 SELECT 语句和 Example 2 中的 DECLARE CURSOR 所包含的 SELECT 语句在所读取的每一行上都生成共享锁,并且这些共享锁将一直保持到事务提交或回滚。