有没有什么好的办法实现两个用户不能同时读取同一条数据? 就是假如数据库中有1,2 两条数据a,b两用户一次只能读取一条数据a用户读取1数据 在界面修改此数据的时候,b用户此时只能读2这条数据 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这里就改用到 数据库中的 锁 了; 就是要解决数据库并发访问的机制 一条数据在同一时间内只能被一个用户修改,其他用户可以查询;; 锁又分为 行级锁,表级锁; 行级锁只对用户正在访问的行进行锁定。在使用 INSERT、UPDATE、DELETE 和 SELECT ... FOR UPDATE 等语句时,Oracle 会自动应用行锁定。 表级所将保护数据,在事务处理过程中,表级锁会限制对整个表的增、删、改操作。LOCK TABLE <table_name> IN <look_mode> MODE [NOWAIT]; 行共享(ROW SHARE, RS) 行排他(ROW EXCLUSIVE, RX) 共享(SHARE, S) 共享行排他(SHARE ROW EXCLUSIVE, SRX) 排他(EXCLUSIVE, X) 你自己看看吧 可以用到java中的线程锁例如 取数据调用的是一个方法 这个方法为A那么 public synchronized String A(){/**获取数据 **/}加上 synchronized 关键字即可 此时一次只允许一个线程进来 当这个线程还在执行操作的时候第二个线程只能等待 同时顶一下一楼! 呵呵 给个sql: select * from table where id=1 for update extjs4 store数据加载listern事件 一个稍微复杂一点的时间计算。 囧~~~~~~~~ 急:spring2.0+struts2.0.1整合问题? Struts用途问题 坛子里有没有成都的朋友 多对一的插入问题啊 Spring配置问题 Axis初级问题 使用jbuilder7和weblogic7在编译ejb的时候出现ejbc可能引发不知名的错误的警告怎么处理? EJB客户端端运行有错的问题,Ljglory(blue_poet),请看看吧, 方法重写 session 问题 简单
就是要解决数据库并发访问的机制 一条数据在同一时间内只能被一个用户修改,其他用户可以查询;;
锁又分为 行级锁,表级锁;
行级锁只对用户正在访问的行进行锁定。在使用 INSERT、UPDATE、DELETE 和 SELECT ... FOR UPDATE 等语句时,Oracle 会自动应用行锁定。 表级所将保护数据,在事务处理过程中,表级锁会限制对整个表的增、删、改操作。LOCK TABLE <table_name> IN <look_mode> MODE [NOWAIT];
行共享(ROW SHARE, RS)
行排他(ROW EXCLUSIVE, RX)
共享(SHARE, S)
共享行排他(SHARE ROW EXCLUSIVE, SRX)
排他(EXCLUSIVE, X) 你自己看看吧
例如 取数据调用的是一个方法 这个方法为A那么 public synchronized String A(){/**获取数据 **/
}加上 synchronized 关键字即可
此时一次只允许一个线程进来 当这个线程还在执行操作的时候第二个线程只能等待 同时顶一下一楼! 呵呵