如题。在datamodule中有adoconection控件和adoquery控件,已经建立连接unit frm_employees_unit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, ComCtrls, Mask, DB, ADODB,datomod_link;
//datomod_link为系统的data module单元名
type
Tfrm_employees = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
.............
procedure FormActivate(Sender: TObject);
private
Datamod:Tdatamod_link;//声明窗体所调用的类的实例名
public
.............
end;
procedure Tfrm_employees.FormActivate(Sender: TObject);
var
SqlText:string;
begin
Datamod:=Tdatamod_link.Create(nil);//创建类的实例
Datamod.data_adoq1.Close ;
Datamod.data_adoq1.SQL.Clear;
SqlText:='selcect.......from......where......';//该select查询涉及到三个表的连接查询
Datamod.data_adoq1.SQL.Add(SQLText);
Datamod.data_adoq1.open;那么,在DBedit中的Datafield字段怎么跟这个查询结果的各个字段对应上啊?它是在程序中从Tstring对象中给SQL属性赋值的,如果在属性窗口中直接赋给SQL那很好办,但我的adoquery1在数据摸块中是给各个窗口共享的,只能动态赋值了怎么解决哈?
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DBCtrls, ComCtrls, Mask, DB, ADODB,datomod_link;
//datomod_link为系统的data module单元名
type
Tfrm_employees = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
.............
procedure FormActivate(Sender: TObject);
private
Datamod:Tdatamod_link;//声明窗体所调用的类的实例名
public
.............
end;
procedure Tfrm_employees.FormActivate(Sender: TObject);
var
SqlText:string;
begin
Datamod:=Tdatamod_link.Create(nil);//创建类的实例
Datamod.data_adoq1.Close ;
Datamod.data_adoq1.SQL.Clear;
SqlText:='selcect.......from......where......';//该select查询涉及到三个表的连接查询
Datamod.data_adoq1.SQL.Add(SQLText);
Datamod.data_adoq1.open;那么,在DBedit中的Datafield字段怎么跟这个查询结果的各个字段对应上啊?它是在程序中从Tstring对象中给SQL属性赋值的,如果在属性窗口中直接赋给SQL那很好办,但我的adoquery1在数据摸块中是给各个窗口共享的,只能动态赋值了怎么解决哈?
然后dbedit1的datasource设置为datasource1
with data_adoq1 do
begin
close;
sql.clear;
sql.add('select name from tablename');
open;
while not eof do
begin
combobox1.items.add(fieldbyname('name').asstring);
next;
end;
end;
我觉得你忽略了一个问题,DBedit只能显示一个字段,那要设置DataField属性,但SQL属性是在程序中指定的..设计期间是无法指定的..我问的就是在程序的什么地方怎么指定这个属性?combobox应该是循环赋值吧?这个清楚了。