我要作一個利用combobox1的items中的選項作為字段名來作為查詢的字段名.
如:
select * from *.db where combobox1.text=edit1.text
我知道這樣是錯誤,我想問一下到底要怎樣來實現combobox1的選項
produce form1.create (sender:tobject);
ComboBox1.Clear;
for i:=0 to ADOQuery1.FieldCount-2 do
ComboBox1.Items.Add(ADOQuery1.Fields[i].FieldName);
ComboBox1.ItemIndex:=0;
produce form1.button1click (sender:tobject);
var
fstr:string;
begin
case ComboBox1.ItemIndex of
0,4:fstr:='select * from *.db where(%s%s%s) order by %s';
showmessage(fstr);
為什么我就不能顯示我所要查詢的值.而且我一改變combobox1的值就不能查詢選擇的字段名?
如:
select * from *.db where combobox1.text=edit1.text
我知道這樣是錯誤,我想問一下到底要怎樣來實現combobox1的選項
produce form1.create (sender:tobject);
ComboBox1.Clear;
for i:=0 to ADOQuery1.FieldCount-2 do
ComboBox1.Items.Add(ADOQuery1.Fields[i].FieldName);
ComboBox1.ItemIndex:=0;
produce form1.button1click (sender:tobject);
var
fstr:string;
begin
case ComboBox1.ItemIndex of
0,4:fstr:='select * from *.db where(%s%s%s) order by %s';
showmessage(fstr);
為什么我就不能顯示我所要查詢的值.而且我一改變combobox1的值就不能查詢選擇的字段名?
解决方案 »
- 有SELECT UNIQUE * FROM 表1这种语法吗
- 这是什么日期转换形式?求助,百度摆不到...
- 送分
- [讨论]关于class
- 请问我的delphi导出的数据在excel里中间是透明的啊.
- 现在我想用sql sever做数据库了,不知从何入手啊
- 怎样在WEB中实现树型结构?
- 请教在ClientDataSet主从表中对DBGrid的OnTitleClick事件如何排序?
- 我的TListView控件的checkboxes选择了true,即在每一行前加复选框,如何使点击某一行的checkbox,行焦点也随之变为这一行?
- 准备离开
- 将数据表存为文本文件的问题!急
- 调用dll里时的指针问题(在线)
produce form1.button1click (sender:tobject);
var
fstr:string;
begin
case ComboBox1.ItemIndex of
0,4:fstr:='select * from *.db where '+combobox1.text+'='+''''+edit1.text+'''';
showmessage(fstr);
end;
end;
如果我選擇的是combobox1.itemindex=2時或者是其它索引值時就不能用了.
上面你提到的我早就想到了
不過還是謝謝你的回答.
的数据是要加上引号的:
假如有表namecard(name,sex,age)//其中前两个字段是字符型,age是数值型
insert into namecard values('张三丰','男',105);
你再改改你的程序吧
combobox1.item(combox1.itemindex).string?
combobox1.item(combox1.itemindex).text?还是别的?
這樣會把combobox1.itemindex所有的值都取出來.
你可以用你這種方法去試試看.
我也知道必須取combobox1.text.但是要怎樣才能取到除了itemsindex:0外的值.
var
i:integer;
begin
ComboBox1.Clear;
for i:=0 to ADOQuery1.FieldCount-2 do
ComboBox1.Items.Add(ADOQuery1.Fields[i].FieldName);
ComboBox1.ItemIndex:=0;
end;procedure TForm1.Button1Click(Sender: TObject);
var
result:string;
begin
case ComboBox1.ItemIndex of
0,4:result:='select * from *.db where (%s%s''%s'')';end;
showmessage(result);
end;end.
這是我測試用的你可以看看并幫我改一下.
combobox.item[combobox.itemindex]就是指你当前选中的项。至于怎么渠道其中的字符串我忘记了,好长时间没有用delphi了。
"這樣會把combobox1.itemindex所有的值都取出來"是什么意思呢?把
case ComboBox1.ItemIndex of
0,4:result:='select * from *.db where (%s%s''%s'')';改成result : = 'select * from *.db where '+combobox.item[combobox.itmeindex].string + '= %s'我觉得应该没有问题。
就是把加到combobox的items全部取出來
你說的我都有試過還是不行.
我知道我没有把选择项的内容取出来.
我要的也是把選擇項內容取出來.
sigh!
begin
showmessage(combobox.items[combobox.itemindex].String);
end;
告诉我showmessage中的内容。
begin
showmessage(combobox1.items(combobox1.itemindex).Text);
end;
這樣還是會出錯的而且你的[]更是錯誤的.
missing operator or semicolon 的錯誤提示.