如下图,
解决方案 »
- 高分求助!!BDS2006中如何升级INDY10
- 请高手指教,关于WebService安全性的问题?
- 请问如何把.qrp(quickrpt)格式的数据转化成别的格式?
- ODAC 一问!
- ---------->>>>>>>>>>>21世纪之惊人大发现:Delphi/BCB编译器之缺陷???
- vb代码转delphi,请大神们献策!
- 现在这个论坛里有多少delphi高手?
- 简单问题!不好意思
- 怎么用一个按钮实现多个功能?(小菜鸟送分34分)
- 我用DELPHI的谷歌浏览器打开网页,为什么和用IE打开会有差别?
- delphi yyyy-mm-dd hh:mm:ss与秒数如何互换
- DBGRIDEH的单元格合并
var
i:integer;
sqlstr:string;
begin
self.ADOQuery1.Close;
self.ADOQuery1.SQL.Clear;
self.ADOQuery1.SQL.Add('select * from 表1 where 姓名='''+trim(self.edit1.text)+''''); //这里取edit1里面的姓名
sqlstr:='';
for i :=2 to self.ADOQuery1.FieldCount do //这里从2开始,第1个字段是姓名忽略了
if self.ADOQuery1.Fields[i].Text='是' then sqlstr:=sqlstr+','+self.ADOQuery1.Fields[i].FieldName;//如果是”是“就加入列表
sqlstr:='select 姓名'+sqlstr+' from 表1 where 姓名='''+self.ADOQuery1.fieldbyname('姓名').AsString+'''';
self.ADOQuery2.Close;
self.ADOQuery2.SQL.Clear;
self.adoquery2.sql.add(sqlstr);
self.adoquery2.open;end;临时写的,没有测试。如果字段太多,还要考虑SQL语句有效长短的问题。
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
sqlstr:string;
begin
self.ADOQuery1.Close;
self.ADOQuery1.SQL.Clear;
self.ADOQuery1.SQL.Add('select * from 表1 where 姓名='''+trim(self.edit1.text)+''''); //这里取edit1里面的姓名
self.adoquery1.open; //这个漏了
sqlstr:='';
for i :=2 to self.ADOQuery1.FieldCount do //这里从2开始,第1个字段是姓名忽略了
if self.ADOQuery1.Fields[i].Text='是' then sqlstr:=sqlstr+','+self.ADOQuery1.Fields[i].FieldName;//如果是”是“就加入列表
sqlstr:='select 姓名'+sqlstr+' from 表1 where 姓名='''+self.ADOQuery1.fieldbyname('姓名').AsString+'''';
self.ADOQuery2.Close;
self.ADOQuery2.SQL.Clear;
self.adoquery2.sql.add(sqlstr);
self.adoquery2.open;end;