程序概况:
(1)用ADO连SQL Server 2000 (2)在DBGrid里面显示出表的信息 (3) 表1
字段:ID XXX XXX XXX
记录: 1 A B C
表2
字段:ID 姓名
记录: 1 BEYOND
问题:
(1)用DBGrid显示 表1 时能不能实现不显示出" 表1 "中的" ID "字段,而代之以相对应的 "姓名".
也就是在DBGrid中打开"表1"时能显示出:
姓名 XXX XXX XXX
BEYOND A B C
(2)用FastReport打印 表1 时能不能也像上面一样不打印出"表1"中的"ID"字段,而代之以相对应的
"表2"中的姓名. 请大家多多帮忙了,小弟在这谢谢了~~~~~~`当然分肯定是要给的,而且是多多的~~~
(1)用ADO连SQL Server 2000 (2)在DBGrid里面显示出表的信息 (3) 表1
字段:ID XXX XXX XXX
记录: 1 A B C
表2
字段:ID 姓名
记录: 1 BEYOND
问题:
(1)用DBGrid显示 表1 时能不能实现不显示出" 表1 "中的" ID "字段,而代之以相对应的 "姓名".
也就是在DBGrid中打开"表1"时能显示出:
姓名 XXX XXX XXX
BEYOND A B C
(2)用FastReport打印 表1 时能不能也像上面一样不打印出"表1"中的"ID"字段,而代之以相对应的
"表2"中的姓名. 请大家多多帮忙了,小弟在这谢谢了~~~~~~`当然分肯定是要给的,而且是多多的~~~
使用ListView的Report形式...
使用时把你Select到的数据 用一个循环往列表中填就是了....
太恐怖了啊,如果要用DBGrid应该怎么改呢? Thank you all the same!
lookup字段key fields设为id,dataset设为表2
lookup keys设为id,result fields设为name
这样即可
在fastreport 报表里的master data 那个band 上放四个memo
四个memo的内容分别为 [adoquery."姓名"],[adoquery."XXX"],[adoquery."XXX"],[adoquery."XXX"],[adoquery."XXX"]
adoquery1.sql.add('select id 姓名 from 表1');
adoquery1.open;
用SQL 语句写 select id 姓名 , age 年龄 .....from 表1
2.在 中用一个文本框指定数据源 用label 自己写入中文解释
select b.name as 姓名,a.xx1 as XX1,a.xx2 as XX2,a.xx3 as XX3 from table1 a,table2 b where a.id=b.id
是可以实现的,但是又出现了新的问题--不能保存对数据的修改!!
提示错误:
Project Project1.exe raised exception class EOleException with message'缺少更新或刷新的键列
信息' Process stopped Use Step or Run to continue.现在该怎么改写才能保存呢??
Mickeylqz(月圆之夜,紫禁之巅,一剑袭来,天外飞仙)谢谢你新的提示~~
把id字段加到select后面试试不会多表联结?太...了吧
例如
ADOQuery1.Fields[0].DisplayLabel:='姓名'
就可以了……用不着那么麻烦……至于等于什么,随便用什么做都可以。从数组到数据库……
打印是否可以不清楚,没实验过。