各位大虾们:
开发环境为VisualStudio 2008 + ORACLE 11.0G ,要实现一个存储过程,先用游标查询一张A,然后将与A表的子表K内的ID为AID信息查询完整后于B表逐行匹配匹配,成功及对B表进行操作,同时在更新A表内容与C表生成一条记录,匹配不成功则不更新A表和B表,同时将错误信息写入临时表T,游标循环完成后则返回临时表T和C表的新增的记录;要求整个游标的循环的过程为一个事务,请问这种带游标和事务的存储过程怎么写比较好。
开发环境为VisualStudio 2008 + ORACLE 11.0G ,要实现一个存储过程,先用游标查询一张A,然后将与A表的子表K内的ID为AID信息查询完整后于B表逐行匹配匹配,成功及对B表进行操作,同时在更新A表内容与C表生成一条记录,匹配不成功则不更新A表和B表,同时将错误信息写入临时表T,游标循环完成后则返回临时表T和C表的新增的记录;要求整个游标的循环的过程为一个事务,请问这种带游标和事务的存储过程怎么写比较好。
解决方案 »
- 关于oracle的job执行
- 创建表空间时用了nologing选项,为什么还可以recover?
- SQL行转列问题求解,实在是想不出解决办法了,请高手们帮忙!谢谢!
- 添加字段,并插入值!
- 请问ERWIN创建的模型如何导入oracle数据库
- 如何建立insert update delete 触发器
- 使用sql语句合并记录
- 请问导入数据能否将原来的覆盖掉,只想存放我导进去的数据
- 如何从sale表COPY一条记录插入sale表中?
- 我的oracle在sqlplus下打的开,但用database administration下的DBA studio却打不开此数据库。急!
- EM问题
- TNS:协议适配器错误 帮帮忙吧,我今天才接触到Oracle
当发生以下情况时,事务结束:
1. COMMIT/ROLLBACK
2. 执行了DDL或DCL语句
3. 用户主动断开数据库连接。
4. 数据库服务器宕机。可以在PL/SQL中使用SAVEPOINT来控制事物。
在一个PL/SQL块中从一个SAVEPOINT到另一个SAVEPOINT,可以定义事务。
使用SAVEPOINT命令可以把事务分解为多个单元,这样一个PL/SQL块中,有些单元可以被提交,有些可以被回滚。
游标,存储过程.这些你去看一下书吧!
在EXCEPTION里加上ROLLBACK