有关select @var 在exec () 中 的模梭两可的问题,急

tofool 2003-05-20 09:55:15
declare @code int
select @code=-1

select @sql='select @code=code from '+@tablename+' where '+ ltrim(rtrim(@field))+' is null '
print @sql

exec(@sql)

注:所有的变量都有定义。

它提示的错误信息是:必须定义@code 。

我想有什么办法 达到 我想要的结果??! 换一个方法也行!
...全文
102 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tofool 2003-05-20
  • 打赏
  • 举报
回复
请问,sp_executesql 是不是任何角色,都可以使用??

还是只有admin 角色才能使用!?
happydreamer 2003-05-20
  • 打赏
  • 举报
回复
要用sp_executesql exec不支持动态输出
愉快的登山者 2003-05-20
  • 打赏
  • 举报
回复
declare @code int
select @code=-1

select @sql=N'select @code=code from '+@tablename+' where '+ ltrim(rtrim(@field))+' is null '

execute sp_executesql
@sql,
N'@code int output',
@code = @code output
select @code
pengdali 2003-05-20
  • 打赏
  • 举报
回复
declare @code int,@sql nvarchar(4000)
select @code=-1

select @sql='select @code=code from '+@tablename+' where '+ ltrim(rtrim(@field))+' is null '
print @sql

exec sp_executesql @sql,N'@code int output',@code output

select @code
pengdali 2003-05-20
  • 打赏
  • 举报
回复
declare @code int,@sql nvarchar(4000)
select @code=-1

select @sql='select @code=code from '+@tablename+' where '+ ltrim(rtrim(@field))+' is null '
print @sql

exec sp_executesql @sql,N'@code int output',@code output

select @code
firetoucher 2003-05-20
  • 打赏
  • 举报
回复
select @sql='
declare @code int
select @code=-1

select @code=code from '+@tablename+' where '+ ltrim(rtrim(@field))+' is null '

print @sql

exec(@sql)
pengdali 2003-05-20
  • 打赏
  • 举报
回复
declare @code int
select @code=-1

select @sql='select @code=code from '+@tablename+' where '+ ltrim(rtrim(@field))+' is null '
print @sql

exec sp_executesql @sql,N'@code int output',@code output

select @code

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧