动态存储过程

有两个表,结构一样,如下:
tb_1 and tb_2

ID int
NAME varchar(10)

我现在想写一个存储过程,输入一个表名(tb_1 或 tb_2) 返回表中最大ID,
请问大家我如何写才能实现功能。

我试过这样不行,老说@ID没有定义
Create Procedure GetMaxID
@TableName, @ID output
as
EXEC('select @ID = max(ID) from '+@TableName)
go

---------------------------------------------------------------

Create Procedure GetMaxID
@TableName, @ID output
as
begin
declare @sql nvarchar(1000)
set @sql='select @ID = max(ID) from '+@TableName
exec sp_executesql @sql,N'@id int output',@id output
end

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus