首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

带输出参数存储过程 sql拼接有关问题

2012-10-28 
带输出参数存储过程 sql拼接问题存储过程中有个输出参数并且要判断 这个输出参数为null的话就返回001下面

带输出参数存储过程 sql拼接问题
存储过程中有个输出参数 并且要判断 这个输出参数为null的话 就返回001
下面是我胡写的 sql处于入门级别的呵呵 大家帮忙改下

SQL code
ALTER procedure [dbo].[Pro_DataMax]@TableName       varchar(50),--表名@zd              varchar(50),--Max字段@Maxid           int outputasexec('select '+@Maxid+'= Max(Convert(int,'+@zd+')) from'+@TableName)if @maxid in nullselect @maxid=001

这样写 调用的时候直接报错

[解决办法]
SQL code
ALTER  procedure [dbo].[Pro_DataMax]@TableName       varchar(50),--表名@zd              varchar(50),--Max字段@Maxid           int outputASBEGIN declare @num int, @sqls nvarchar(4000) --exec('select @Maxid= Max(Convert(int,'+@zd+')) from'+@TableName)set @sqls='select @a= Max(Convert(int,'+@zd+')) from '+@TableName exec sp_executesql @sqls,N'@a int output',@Maxid output if @maxid is nullselect @maxid=1END 

热点排行