oracle多线程中的事务处理
oracle没有提供事务开始语句,它默认以第一个修改语句为事务开始,这个在多线程里面是使用会不会出问题?
假如两个线程同时在一个数据库连接上使用事务,第一个线程的事务应该会受到第二个线程事务的影响,
假设两个线程的操作数据库语句是这样:
线程1: 线程2
sql1; sql3;
sql2; sql4;
commit; commit;
那么实际操作数据库时可能会是这样:
sql1
sql2
sql3
commit;
sql4
commit;
请问我这样的猜想对不对?如何避免这样的问题?
------解决方案--------------------有可能这样执行,ORACLE对应并发,主要是通过加锁、多版本机制来实现
------解决方案-------------------- oracle 提供了 锁