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
请高手看看怎样表示

解决方案 »

  1.   

    create table test1(name varchar(10),id int,class varchar(2))
    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
      

  2.   

    偷偷郁闷一下,本来是写在word上的,没想到发到论坛变成这样,有事出去,所以没注意看,现在才发现,虚心接受意见
      

  3.   

    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
    请高手看看怎样表示
      

  4.   

    刚刚在些例子的时候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了