create PROCEDURE cf_Add_Table_id@AddId nvarchar(30), --要增加字段
@TableName nvarchar(50), --所操作表名
@newCarId nvarchar(20) output --生成@TableName的最新ID/**
***自动计算表的ID
**/
ASdeCLARE @sql nvarchar(500)
set @sql='select @newCarId=convert(nvarchar,max('+@AddId+'))+1 from '+ @TableName
exec sp_executesql @sql,N'@newCarId nvarchar(20) output',@newCarId output
@TableName nvarchar(50), --所操作表名
@newCarId nvarchar(20) output --生成@TableName的最新ID/**
***自动计算表的ID
**/
ASdeCLARE @sql nvarchar(500)
set @sql='select @newCarId=convert(nvarchar,max('+@AddId+'))+1 from '+ @TableName
exec sp_executesql @sql,N'@newCarId nvarchar(20) output',@newCarId output
@AddId nvarchar(30), --要增加字段
@TableName nvarchar(50), --所操作表名
@newCarId nvarchar output --生成@TableName的最新ID
as
begin
declare @sql nvarchar(4000)
set @sql='select @newCarId=(max('+@AddId+')+1) from '+ @TableName
exec sp_executesql @sql,'@newCarId nvarchar out',@newCarId out
end
go
过程需要参数 '@parameters' 为 'ntext/nchar/nvarchar' 类型。
vivianfdlpw() 这个对了谢谢两位老大,就是有点不明白exec sp_executesql @sql,'@newCarId nvarchar out',@newCarId out
为什么不是 exec(@sql)