Z
zwhc
Unregistered / Unconfirmed
GUEST, unregistred user!
下表 table1 的 etTableName 里的数据为数据库中其它表的名字,
tabel1
etTableName etCode
tableABC et01
tableXYZ et02
... ...
已知 etCode 如何查询 tableABC 中的值?
当然可以这样:
=============================
Create procedure P_abc
@strEtCode varchar(20)
As
declare
@strSQL varchar(1000)
@strTN varchar(32) --TableName
set @strTN = (select etTableName from talbe1 where etCode = @strEtCode)
set @strSQL = 'select * from ' + @strTN
exec (@strSQL)
=============================
但是实际上该存储过程参数很多,这样写调试较困难。
请问,如何将变量直接作为表名?即如何直接书写类似
select * from @strTN
的语句。
为防止没有答案而无法收回分数,先不给分。(没办法,实在穷 )
如有答案,定将 200 分奉上。
tabel1
etTableName etCode
tableABC et01
tableXYZ et02
... ...
已知 etCode 如何查询 tableABC 中的值?
当然可以这样:
=============================
Create procedure P_abc
@strEtCode varchar(20)
As
declare
@strSQL varchar(1000)
@strTN varchar(32) --TableName
set @strTN = (select etTableName from talbe1 where etCode = @strEtCode)
set @strSQL = 'select * from ' + @strTN
exec (@strSQL)
=============================
但是实际上该存储过程参数很多,这样写调试较困难。
请问,如何将变量直接作为表名?即如何直接书写类似
select * from @strTN
的语句。
为防止没有答案而无法收回分数,先不给分。(没办法,实在穷 )
如有答案,定将 200 分奉上。