Oracle 新手问答

  1. 存储过程中,return后,如果没有写明提交(commit)或回滚(rollback),会默认提交吗?
    答:不会。如果修改了数据,又没有写明,则会将数据锁定在那里!
  2. 存储过程中,调用子存储过程异常时,在捕获异常中rollback后,还会继续执行吗?
    答:会。返回主存储过程,继续执行。
  3. 对于同时发送的两个线程同时执行一个存储过程,应怎样控制数据的一致性?
    答:如果是修改,则加锁。如果是插入数据,则必须建唯一索引或者复合索引。
  4. 对同一条记录的多次锁定会不会出现问题?
    答:如果是同一个session则不会,一般如果是同一个存储过程或者函数,都不会出现问题。
原文地址:https://www.cnblogs.com/Denny_Yang/p/3143829.html