CREATE PROCEDURE EGA_DrugReg_CheckVerifyCode
(
@verifycode NVARCHAR(50), --校验码
@type NVARCHAR(10) --表类型,见下CASE块
@rid NVARCHAR(128) OUTPUT --如有相同校验码,输出ID,否则''
)
AS
set @rid=''
DECLARE @sql NVARCHAR(256)
IF CONVERT( INT ,@type ) > 4 AND CONVERT( INT , @type ) < 0
RETURN
SET @sql = 'SELECT '+@rid+'= ID FROM '
SET @sql = @sql +
CASE @type
WHEN '0' THEN 'table0 '
WHEN '1' THEN 'table1 '
WHEN '2' THEN 'table2 '
WHEN '3' THEN 'table3 '
WHEN '4' THEN 'table4 '
END
SET @sql = @sql + 'WHERE F_VerifyCode = ''' + @verifycode + ''''
EXEC( @sql )
--exec sp_executesql(@sql, N'@rid nvarchar(128)',@rid = ''
select @rid
return
GO
博客展示了一个SQL存储过程EGA_DrugReg_CheckVerifyCode,用于根据输入的校验码和表类型,从相应表中查询相同校验码对应的ID并输出。若校验码不存在则输出空,同时对表类型进行了范围判断,使用动态SQL语句执行查询。
1026

被折叠的 条评论
为什么被折叠?



