怎么在动态SQL语句中输出数据???在线等待---------

turenjie 2005-07-14 09:07:01
declare @get_one_day_qty int
declare @procedure_sql varchar(500)
set @procedure_sql='select @get_one_day_qty int=sum_complete_qty from openquery(get_sum_procedure, 存储过程语句)'
exec(@procedure_sql)

print @get_one_day_qty int
这样是否可以得到 @get_one_day_qty int?

...全文
210 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyg158 2005-07-15
  • 打赏
  • 举报
回复
楼上正解!
exec sp_executesql @procedure_sql,N'@get_one_day_qty int output',@get_one_day_qty output
下面直接用 @get_one_day_qty 就可以了
mengzulin 2005-07-15
  • 打赏
  • 举报
回复
不可以。数据库环境的更改只在 EXECUTE 语句结束前有效
要象下面才能输出。

declare @get_one_day_qty int
declare @procedure_sql nvarchar(500)
set @procedure_sql='select @get_one_day_qty int=sum_complete_qty from openquery(get_sum_procedure, 存储过程语句)'
exec sp_executesql @procedure_sql,N'@get_one_day_qty int output',@get_one_day_qty output

print @get_one_day_qty int

另外你sql好象也已经出错了。你自己看一下是吗?

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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