我用的是ACCess数据库和DELPHI 6
在数据库里我用字母定义,如id 代表员工工号,name 代表姓名
我在查询窗口中使用了adoquery 扩dbgride 及combobox 等控件
我在控件combobox 里面输入了中文的工号,姓名等查询字段
我定义了一个数组,把这几个要查询的字段用数组来保存.
s[i]:=combobox1.items[i];
然后再把数据库的值赋给数组,但出现问题
s[0]:=adoquery1.fieldvalues['id']
showmessage(s[0])
s[0]所显示出来的是第一条记录的工号
查询出错,这里要怎么写才能把数据库中的字段赋给我要查询的中文字段啊,
怎样才能显示我要查询的东西
我要查询的是有选择性的而不是查询数据库中的所有字段,
在数据库里我用字母定义,如id 代表员工工号,name 代表姓名
我在查询窗口中使用了adoquery 扩dbgride 及combobox 等控件
我在控件combobox 里面输入了中文的工号,姓名等查询字段
我定义了一个数组,把这几个要查询的字段用数组来保存.
s[i]:=combobox1.items[i];
然后再把数据库的值赋给数组,但出现问题
s[0]:=adoquery1.fieldvalues['id']
showmessage(s[0])
s[0]所显示出来的是第一条记录的工号
查询出错,这里要怎么写才能把数据库中的字段赋给我要查询的中文字段啊,
怎样才能显示我要查询的东西
我要查询的是有选择性的而不是查询数据库中的所有字段,
showmessage(s[0])
S[0]里的就是fieldvalues['id'].显示的当然是工号了.s[0]:=adoquery1.fieldvalues['name']
showmessage(s[0])
就是姓名..
你想显示哪个就把哪个Select 出来不就行了啊
先在列表框1中把中文字段输入好,
然后再用把数据表中的字段添加到列表框2中,var i:integer;
begin
for i:=0 to adoquery1.FieldCount-1 do
combobox1.Items.Add(adoquery1.Fields[i].FieldName);最重要的是让列表框1中的字段与列表框2中的字段同步
在列表框中的change事件中写上
combobox2.ItemIndex:=combobox1.ItemIndex;然后就好做了。
var
Sqlstr:string;
begin
sqlstr:='select * from table1 where id='''+combobox2.text+''' ';
........
end;呵呵。
var i:integer;
begin
for i:=0 to adoquery1.FieldCount-1 do
combobox1.Items.Add(adoquery1.Fields[i].FieldName);
你那样是把数据库中的所以的字段都显示出来的,但我要的结果是我只想查询
数据库中的某些字段,如工呈或姓名
有空可以加我的。我一般都在线。呵呵。