Sql server 如何修改以下代码以添加事务?

Sql server 如何修改以下代码以添加事务?,sql-server,Sql Server,我不熟悉存储过程和事务 我编写了一个存储过程,将数据插入两个表中。以下是SP: Begin SET NOCOUNT ON Declare @Parcel_Id int INSERT INTO Parcel([Code],[Title], [Is_Parcel_Equal_To_Property], [Property_Id],[Property_Type_Id], [Plot_No

我不熟悉存储过程和事务

我编写了一个存储过程,将数据插入两个表中。以下是SP:

Begin

SET NOCOUNT ON 

Declare @Parcel_Id int

INSERT INTO 
        Parcel([Code],[Title],
               [Is_Parcel_Equal_To_Property],
               [Property_Id],[Property_Type_Id],
               [Plot_No],[Phone],[Fax],[Email],
               [Administrator_Name],
               [Watchman_Name],
               [Remark],
               [List_in_Retail_Leasing_Module],
               [Landlord_Id],
               [Country_Id],[State_Id],[Community_Id],[MainRoad_Id],
               [Address],
               [Is_Active],
               [Added_On_Date],[Added_By]) 
        VALUES(@Code,@Title,
               @Is_Parcel_Equal_To_Property,
               @Property_Id,@Property_Type_Id,
               @Plot_No,@Phone,@Fax,@Email,
               @Administrator_Name,
               @Watchman_Name,
               @Remark,
               @List_in_Retail_Leasing_Module,
               @Landlord_Id,
               @Country_Id,@State_Id,@Community_Id,@MainRoad_Id,
               @Address,
               @Is_Active,
               @Added_On_Date,@Added_By) 

Set @Parcel_Id = SCOPE_IDENTITY()

INSERT INTO Parcel_Spacifications
        ([Parcel_Id],[Apartments],[Villas],[Retails],[Offices],[Labour_Camp],
         [Warehouses],[Total_Car_Parks],[Floors],[Year_Of_Construction],
         [Built_Up_Area],[Plot_Area],[No_Of_Basements],[Is_Special_Project])
        VALUES (@Parcel_Id,@Apartments,@Villas,@Retails,@Offices,@Labour_Camp,
                @Warehouses,@Total_Car_Parks,@Floors,@Year_Of_Construction,
                @Built_Up_Area,@Plot_Area,@No_Of_Basements,@Is_Special_Project)               
End
RETURN @Parcel_Id

现在我想使用transaction,如何实现这一点?

您可以使用
BEGIN-TRAN
COMMIT
来包装代码,如下所示:

BEGIN

SET NOCOUNT ON

Declare @Parcel_ID int

BEGIN TRAN

...

COMMIT

END

RETURN @Parcel_ID

您应该阅读文档中的备注。它们解释了事务是如何工作的。

您使用
BEGIN-TRAN
COMMIT
包装代码,如下所示:

BEGIN

SET NOCOUNT ON

Declare @Parcel_ID int

BEGIN TRAN

...

COMMIT

END

RETURN @Parcel_ID

您应该阅读文档中的备注。他们解释了交易是如何进行的。

Hi-Ash。我认为这更适合于堆栈溢出。您可以从以下内容开始:@JayC谢谢,我在这里也找到了很好的示例:Hi Ash。我认为这更适合于堆栈溢出。您可以从以下内容开始:@JayC谢谢,我在这里也找到了很好的示例: