2个数据库A,B,A中有C表(字段汉字表达表),B中有D表(字段用英文表示),现要把D表中的字段要用C表中的汉字记录表示,如果C中无英文对照的汉字表达,仍用英文表示字段,同时输出D中的记录 eg: D name ID Class C EnglishStr ChineseStr 王 1 01 name 姓名 输出:姓名 ID Class 王 1 01 请高手看看怎样表示
2个数据库A,B,A中有C表(字段汉字表达表),B中有D表(字段用英文表示),现要把D表中的字段要用C表中的汉字记录表示,如果C中无英文对照的汉字表达,仍用英文表示字段,同时输出D中的记录 eg: D name ID Class C EnglishStr ChineseStr 王 1 01 name 姓名 输出:姓名 ID Class 王 1 01 请高手看看怎样表示
刚刚在些例子的时候sql挂了。郁闷 我把思路告诉你吧 定义一个游标, select a.name from sys.columns as a,sysobjects as b where a.object_id=b.id and b.name = 'C' “C”是表的名称 循环获取表中的所有字段 然后用这些字段到D表中去查找,然后组成新的sql语句执行就OK了
create table test2(EnglishStr varchar(20),ChineseStr varchar(20))
insert into test1 select '王' , 1 , '01'
insert into test2 select 'name', '姓名' -- select * from test1
-- select * from test2declare @sql varchar(8000)
set @sql=''
select @sql=@sql+'select '+EnglishStr+' ['+ChineseStr+'], id,class from test1' from test2
--print @sql
exec(@sql)drop table test1,test2
eg:
D name ID Class C EnglishStr ChineseStr
王 1 01 name 姓名
输出:姓名 ID Class
王 1 01
请高手看看怎样表示
我把思路告诉你吧
定义一个游标,
select a.name from sys.columns as a,sysobjects as b
where a.object_id=b.id and b.name = 'C'
“C”是表的名称
循环获取表中的所有字段
然后用这些字段到D表中去查找,然后组成新的sql语句执行就OK了