如何写一个带事务提交的存储过程?

来源:百度知道 编辑:UC知道 时间:2024/05/27 09:43:40
如何写一个带事务提交的存储过程?
这个带事务提交,要求写在存储过程当中?
谢谢!
p_ Out Varchar2 你这个是什么意思?
我的数据库是sql server.

Createp proccreate proc AA1
as
Begin
BEGIN TRANSACTION
--存储过程内容
(
If @@error<>0
If @@TranCount=1
Rollback Transaction
)--中间出现事务每次要进行以此判断
else
If @@TranCount=1
Commit TRANSACTION
End

他写的是oracle的语法
oracle是显式的提交
mssql是隐式提交
这样的话你就是先定义事物

CREATE OR REPLACE PROCEDURE PROC_load
(
p_ Out Varchar2
)
IS
user_name Varchar2(128);
Begin

Delete From XXXX;

Insert Into XXXX select * from dual;
Commit; ---提交
p_:=Sqlcode;
Exception
WHEN OTHERS THEN
Rollback; --异常则回滚
p_:=Sqlcode||','||Sqlerrm;

END;
----XXXX是一个结构和dual相同的表,自建