1.
采用ADO连接后台数据库,速度太慢,如何解决?
2.
TCOMBOBOX如何直接与SQL指定的数据相连接?
如:TCOMBOBOX的某个属性=SELECT ....
3.
如何将ADOQUERY或ADOTABLE指定的数据复制到另一个表中?
4.
如何对选定的数据源进行统计/汇总等?
采用ADO连接后台数据库,速度太慢,如何解决?
2.
TCOMBOBOX如何直接与SQL指定的数据相连接?
如:TCOMBOBOX的某个属性=SELECT ....
3.
如何将ADOQUERY或ADOTABLE指定的数据复制到另一个表中?
4.
如何对选定的数据源进行统计/汇总等?
采用ADO连接后台数据库,速度太慢,如何解决?
看你的数据库是什么数据库,但是DELPHI连接数据库本来就不快,主要是建立连接慢,一旦连接建立后一般还是很快,最好使用BDE,毕竟是BRD自己的东东
2.
TCOMBOBOX如何直接与SQL指定的数据相连接?
如:TCOMBOBOX的某个属性=SELECT ....
这里你应该使用数据感知的combobox,如tdbcombobox
3.
如何将ADOQUERY或ADOTABLE指定的数据复制到另一个表中?
只有你自己使用sql语句搞定,好象有第三方控件可以,但我忘记了,不过这样做的实际意义不大,一般实际使用中没有整个表复制的,实在需要就使用insert into ... select from ...的语句搞定
4.
如何对选定的数据源进行统计/汇总等?
有的dbgrid有这个功能,第三方控件
如:
select a1,b1,c1 from yourtable
union
select '合计',sum(b1) as bb,sum(c1) as cc from yourtable上面的语句是假设yourtable中的a1是字符是字符型字段,b1和c1是数据型字段
===
如果你想在DBGrid中显示带汇总的数据集,可以用上面的方法,更方便的是用EHlib控件包中的DBGridEH控件
FIELD A B C D F
mm 1 2 3
nn 2 3 5
mm 4 5 6
nn 2 5 6
汇总后为
FIELD A B C D F
mm 5 7 9
nn 4 8 11
GROUP BY A
insert into 目的表(字段1,字段2,字段3...) select 字段1,字段2,字段3... from 源表 where 条件这个
select 字段1,字段2,字段3... from 源表 where 条件
也是组成AdoQuery的语句
query等组件不要单独设置connectstring,用一个connection组件连接数据库。一般都关闭,必要时打开相应的表。2.
query.first;
query.open;
while not query/table.eof do begin
combobox.items.add(query.fieldbyname('字段名').value);
query.next;
end;3.
表数据复制可以用sql语句,用query组件execsql执行,需要用参数, 如:
while not query.eof do begin
query.sql.clear;
query.sql.add('update table set 字段名=:参数『可以这样添加多个字段』');
query.paramers.fieldbyname('参数'):=源表的字段
query.execsql;
query.next;
end;
但这种方法效率很低4.
汇总最简单的方法就是用sql语句中的sum函数。另外还可以自己用循环实现,但效率低
SELECT field1 from Table into [一个Tstrings型的数住]?