• 全部
  • 基础类
  • 应用实例
  • 新技术前沿

有关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 。

我想有什么办法 达到 我想要的结果??! 换一个方法也行!
...全文
35 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
tofool 2003-05-20
请问,sp_executesql 是不是任何角色,都可以使用??

还是只有admin 角色才能使用!?
回复
happydreamer 2003-05-20
要用sp_executesql exec不支持动态输出
回复
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
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2003-05-20 09:55
社区公告
暂无公告