和数据库没什么太大关系的.我用的sqlserver create table dept(deptno int,deptname varchar(100)) insert into dept values(1,'人事'); insert into dept values(2,'行政'); insert into dept values(3,'其它');create table users(userid int,uname varchar(10),deptno int); insert into users values(1,'张三',1); insert into users values(2,'李四',1); insert into users values(3,'王二',2); insert into users values(4,'孙五',2); insert into users values(5,'钱大',3);procedure TForm1.FormShow(Sender: TObject); begin with adoquery2 do begin close; sql.text := ' select deptname from dept order by deptno'; open; combobox1.Items.Clear; while not eof do begin combobox1.Items.Add(fields[0].asstring); next; end; end; end;procedure TForm1.ComboBox1Click(Sender: TObject); begin with adoquery1 do begin close; sql.text := ' select userid,uname,deptname from users a,dept b'+ ' where a.deptno=b.deptno and deptname='''+trim(combobox1.Text)+''''; open; end; end;
用来保存相应的ID,
用的是Table控件!!
create table dept(deptno int,deptname varchar(100))
insert into dept values(1,'人事');
insert into dept values(2,'行政');
insert into dept values(3,'其它');create table users(userid int,uname varchar(10),deptno int);
insert into users values(1,'张三',1);
insert into users values(2,'李四',1);
insert into users values(3,'王二',2);
insert into users values(4,'孙五',2);
insert into users values(5,'钱大',3);procedure TForm1.FormShow(Sender: TObject);
begin
with adoquery2 do
begin
close;
sql.text := ' select deptname from dept order by deptno';
open;
combobox1.Items.Clear;
while not eof do
begin
combobox1.Items.Add(fields[0].asstring);
next;
end;
end;
end;procedure TForm1.ComboBox1Click(Sender: TObject);
begin
with adoquery1 do
begin
close;
sql.text := ' select userid,uname,deptname from users a,dept b'+
' where a.deptno=b.deptno and deptname='''+trim(combobox1.Text)+'''';
open;
end;
end;
我用的是Table控件!!希望高手能解答
看不要图的看下面 谢谢!
http://hiphotos.baidu.com/%BA%DA%C6%EF%D2%E3%BB%A4/pic/item/958361187f4b481634fa417e.jpg
http://hiphotos.baidu.com/%BA%DA%C6%EF%D2%E3%BB%A4/pic/item/9eafb1f426f7fec8f2d38584.jpg
begin
Query1.Close;
Query1.SQL.Text := Format('select * from 表 where 字符串字段=''%s''', [Combobox1.Items[Combobox1.ItemIndex]]);
Query1.Open;
end;
adotable2.Filtered := true;别用table控件了,改成query控件得了.
这看一点那问一点才做到这种程度 一旦改了 很多就要全改了
不过我会考虑看看的 谢谢~