变量给变量怎么赋值

shuql 2010-12-06 11:40:22
declare @ExecStr varchar(1000)
DECLARE @TableId VARCHAR(100)
DECLARE @InfoFieName VARCHAR(100)
DECLARE @InfoTableNames VARCHAR(100)
DECLARE @Attribute VARCHAR(100)
declare @ss varchar(100)
set @InfoFieName='ProductName'
set @InfoTableNames='dbo.PRODUCT_INFO'
set @TableId='ProductId'
set @Attribute='13'
SET @ExecStr='SELECT '+@InfoFieName+' FROM '+@InfoTableNames+' WHERE '+@TableId+'='''+@Attribute+''''
EXEC (@ExecStr)
print @ss
怎么把变量@InfoFieName查询出来的值赋给@ss 然后输出
@ExecStr='SELECT '+@ss+'='+@InfoFieName+' FROM '+@InfoTableNames+' WHERE '+@TableId+'='''+@Attribute+''''我这样写是不是错的?运行没反应,请高手们指教指教。。。
...全文
90 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
飘零一叶 2010-12-06
  • 打赏
  • 举报
回复
declare @ExecStr varchar(1000)
DECLARE @TableId VARCHAR(100)
DECLARE @InfoFieName VARCHAR(100)
DECLARE @InfoTableNames VARCHAR(100)
DECLARE @Attribute VARCHAR(100)
declare @ss varchar(100)
set @InfoFieName='ProductName'
set @InfoTableNames='dbo.PRODUCT_INFO'
set @TableId='ProductId'
set @Attribute='13'
SET @ExecStr='SELECT @ss='+@InfoFieName+' FROM '+@InfoTableNames+' WHERE '+@TableId+'='''+@Attribute+''''
EXEC sp_executesql @ExecStr,N'@ss AS varchar(100) OUTPUT',@ss OUTPUT
select @ss
chuifengde 2010-12-06
  • 打赏
  • 举报
回复
declare @ExecStr nvarchar(1000)
DECLARE @TableId nVARCHAR(100)
DECLARE @InfoFieName nVARCHAR(100)
DECLARE @InfoTableNames nVARCHAR(100)
DECLARE @Attribute nVARCHAR(100)
declare @ss nvarchar(100)
set @InfoFieName='ProductName'
set @InfoTableNames='dbo.PRODUCT_INFO'
set @TableId='ProductId'
set @Attribute='13'
SET @ExecStr='SELECT @ss='+@InfoFieName+' FROM '+@InfoTableNames+' WHERE '+@TableId+'='''+@Attribute+''''

EXEC sp_executesql @ExecStr,N'@ss nvarchar(100) out',@ss OUT

print @ss
zhwh1981 2010-12-06
  • 打赏
  • 举报
回复
同意3楼的

27,579

社区成员

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

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