首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

已有一个表,这个表的表名当变量,措辞句如果查

2012-12-15 
已有一个表,这个表的表名当变量,用语句如果查?已有一个表,这个表名为 table_123直接查询select * FROM tab

已有一个表,这个表的表名当变量,用语句如果查?
已有一个表,这个表名为 table_123

直接查询


select * FROM table_123

但是我设置一个变量
declare @tt nvarchar(100)
set @tt = 'table_123'

select * FROM @tt 

这样查询不能成功。

只能这样查询才成功啊。exec('select * FROM '+ @tt)
但是这个查询对我的语句更改比较 大,

我的表是固定表,不是变量表,我不想设置变量表。

想问一下,像要这样的情况。是不是只能通过 
exec('select * FROM '+ @tt)
来查询呢?
[最优解释]
这种情况下首先可以确定需要动态语句  也就是你说的可以成功的方法

但是你说你的表示固定的  那为何不直接select *  from 表名   非要用变量   这不是多此一举吗?


此外如果一定要用变量  那么你把动态语句封装到存储过程里面  直接调用存储过程就好了
[其他解释]
不是我为什么要多此一举。
具体情况比较 复杂,我这边只是举个简单的例子
看来是没有办法了。谢谢了。

热点排行