[英]Sql Transaction
我是sql的新手,我想在sql中使用ROLLBACK TRANSACTION,所以我這樣做了
--to insert into instructor table--
create procedure [dbo].[insertInstructor] (@f_name varchar(50), @l_name varchar(50), @contact nvarchar(50))
AS
BEGIN
begin transaction
save transaction insert_instructor
insert into instructor(f_name,l_name,contact)
values(@f_name,@l_name,@contact)
END
--to rollback the transaction i did this
create procedure [dbo].[delete_instructor]
AS
BEGIN
begin transaction insert_instructor
rollback transaction insert_instructor
END
我在Windows窗體應用程序C#中調用了這些存儲過程。 TIA
CREATE PROCEDURE [dbo].[insertInstructor] (@f_name VARCHAR(50), @l_name VARCHAR(50), @contact NVARCHAR(50))
AS
BEGIN
BEGIN TRANSACTION
DECLARE @flg_error INT
SET @flg_error = 0
INSERT INTO instructor(f_name,l_name,contact)
VALUES(@f_name,@l_name,@contact)
SET @flg_error = @@ERROR
IF @flg_error <> 0 BEGIN
RAISERROR ('1', 16, 1)
ROLLBACK TRANSACTION
END
COMMIT TRANSACTION
END
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.