在做Delphi+MS SQL Server2000多层C/S数据库时,我在数据库中建的表为中文表,现将其中一张表列出:
 产品表(产品编号,产品名,型号,单价,库存量),但是在用RAVE页中的组件做报表时,不能有效的生成数据视图,
不知道有没有办法能实现报表.所以我只有把数据库中的表全部用英文字符代替,上面的表代替为:
CP(ProNo,ProNa,Modal,Price,Stocks),这样就能用Rave页中组件做报表了,但是在我用TDBGrid组件显示数据库
中的数据时,在客户端所有字段都为英文字符显示,对我们理解含义可能带来不便,现在我要用以上的中文字符产品表在TDBGrid代替英文字符CP以及其中的各字段,我该怎么做,是在TADOTable中对字段进行修改,还是在TDBGrid中,或是用什么方法,请各位高手帮忙指点!

解决方案 »

  1.   

    新建一个数据表,结构如下:
    ID       EN      CN
    1        ProNO   产品编号
    2        ProNa   产品名称
    3        Modal   型号
    ……     ……    ……
    然后用Query1查询出来;
    然后作如下处理:(假设DBGrid的DataSet是Table1)
    while not Query1.Eof do
    begin
      Table1.FieldByName(Query1.FieldByName('EN').AsString).DisplayLabel := Query1.FieldByName('CN').AsString;
      Query1.Next;
    end;
    然后在你的DBGrid中显示的就都是中文啦!
    ======================================
    希望能对你有所帮助!
      

  2.   

    右击你的TDBGrid,在Columns Editor...->Add all Fields... ,修改每个字段的title属性就可以了。要是你的DBGrid是动态创建的,可以用上面那位的,否则建议使用本方法,无论在设计时还是在运行时都简单。
      

  3.   

    方法一:
          用Sql语句:Select ProNO as 产品编号,ProNa as 产品名,Modal as 型号,Price as 单价,Stocks as 库存量 from CP;方法二:
         获得字段名称,判断字段名称和中文名称对应。添加倒DBGrid中的字段中。一定要注意字段的顺序。