存储过程第二讲:sp模板

--1.列出使用库名
USE [库名]
GO

--2.添加更新存储过程的判断
IF OBJECT_ID('rp_ba_proceduretemplate','P') IS NOT NULL
BEGIN
	DROP PROCEDURE rp_ba_proceduretemplate;
END
GO

--设置 ANSI_NULLS 和 QUOTED_IDENTIFIER
-- SQL-92 标准要求在对空值进行等于 (=) 或不等于 (<>) 比较时取值为 FALSE
SET ANSI_NULLS ON 
GO

SET QUOTED_IDENTIFIER ON --标识符可以由双引号分隔
GO


--参数变量命名应有io之分,i输入,o输出;且用( )括起来。每个一行
CREATE PROCEDURE rp_ba_proceduretemplate
(
	@i_bid	INT,					 
	@i_date VARCHAR(20),			
	@o_money DECIMAL(18,2) OUTPUT	
)
AS
BEGIN TRY
	--7.兼容zbox:禁止警告提示和影响行提示
	SET ANSI_WARNINGS OFF;	
	SET NOCOUNT ON;
	
	---sql逻辑代码
	
	SET ANSI_WARNINGS ON;	
	SET NOCOUNT OFF;
	
END TRY
--16.需要 TRY CATCH 捕获异常结构
BEGIN CATCH

 DECLARE @ErrorMessage NVARCHAR(4000),
 		   @ErrorSeverity INT,
 		   @ErrorState INT;

 SELECT @ErrorMessage = ERROR_MESSAGE(),
        @ErrorSeverity = ERROR_SEVERITY(),
        @ErrorState = ERROR_STATE();

 RAISERROR (@ErrorMessage, -- Message text.
            @ErrorSeverity, -- Severity.
            @ErrorState -- State.
            );

END CATCH
GO


猜你喜欢

转载自blog.csdn.net/liyu121/article/details/78709017
今日推荐