请教各位高手 为什莫 @aa 为空值

ghxghx 2002-04-17 06:05:04
table1 有字段 aa bb
declare @aa sysname
select @aa=col_name(object_id('aa..dbo.table1'),1 )
SELECT @aa FROM dbo.TABLE1
...全文
25 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ghxghx 2002-04-17
  • 打赏
  • 举报
回复
谢谢大家
结帖
wyarrant 2002-04-17
  • 打赏
  • 举报
回复
在微软的教材里
专有一节将动态生成sql语句的
变量只能是变量不能是别的
foolishchao 2002-04-17
  • 打赏
  • 举报
回复
在sql中,例如数据库、表、视图、列等东东是不能用变量名的。如果要实现这个功能,要用动态sql等方法来解决。
ghxghx 2002-04-17
  • 打赏
  • 举报
回复
我怎莫没想到!!!
谢谢: leimin(leimin)
foolishchao(傻超)
虽然没搞懂为什莫sql 不支持
declare @aa sysname
select @aa=col_name(object_id('aa..dbo.table1'),1 )
SELECT @aa FROM dbo.TABLE1
这样的写法
如果没有人就这种写法为什莫不行提出看法
重复的回答请免
明天我就结贴了
foolishchao 2002-04-17
  • 打赏
  • 举报
回复
declare @aa sysname,@sql varchar(1000)
set @aa=col_name(object_id('dbo.tablename'),1)
if @aa is not null
exec('SELECT '+@aa+' FROM dbo.tablename')
else
print 'col_name not find'
ghxghx 2002-04-17
  • 打赏
  • 举报
回复
空值确实解决了
可是我想把字段名付给@aa
再从table1中取出字段中的记录
可以吗?如果可以,该如何做
leimin(leimin) 新的问题无论是否回答
分一定会给的
等明天如果没有更好的回答
就结帖给分
leimin 2002-04-17
  • 打赏
  • 举报
回复
declare @aa sysname
select @aa=col_name(object_id('dbo.tablename'),2 )
SELECT @aa FROM dbo.tablename


OK!PLS TRY

34,576

社区成员

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

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