Z
zhj.nc
Unregistered / Unconfirmed
GUEST, unregistred user!
在用表名作参数时遇到这样一个问题:
declare @TableName SysName
declare @MaxID Int
Set @TableName='t1'
当我这样写:
Exec ('Set @MaxID=(Select Max(Id) From '+@TableName+')')
告诉我@MaxID未定义。用另一种方法写
Exec ('Set '+@MaxID+'=(Select Max(Id) From '+@TableName+')')
又告诉我“'=' 附近有语法错误。”
问题的关键是,当用表名作参数时,如何付值。
declare @TableName SysName
declare @MaxID Int
Set @TableName='t1'
当我这样写:
Exec ('Set @MaxID=(Select Max(Id) From '+@TableName+')')
告诉我@MaxID未定义。用另一种方法写
Exec ('Set '+@MaxID+'=(Select Max(Id) From '+@TableName+')')
又告诉我“'=' 附近有语法错误。”
问题的关键是,当用表名作参数时,如何付值。