現 因tadoquery.sql.text 會有不同
故 tadoquery 的 fields 也是變化的,想實現:如何有代碼實現 tadoquery 設計時 fields editor --> add all fields
解决方案 »
- Window服务程序中启动连接程序,出现 “ORA-12560:TNS:协议适配器错误 ”
- 新手有问题要问:incompatibe types
- Delphi 7.0 中如何获取dbgrid控件中的记录数
- M Xmas
- 有做过通过串口控制Modem卡的高手么?帮忙吧
- DELPHI中有什么第三方DBGRID控件,可以在一个DBGRID中显示MASTERDETAIL数据?并可以直接打印
- 如何在listview内实现个别数据的修改
- 为了将要到手的女朋友,请三天假,值吗?(不知道要扣多少钱?)
- 讨论:单就数据库编程pb和delphi谁更优秀?
- 数据输入的问题,我都要烦死了,快帮帮我!!求你们了。
- 怎么做DBGrid 分页查询数据库?
- 升级后台数据库
在运行时就不用了吧,呵呵
只查询你要的字段。至于DBGrid的Columns,一般是自动的。假设不是自动对应DataSet,你也可以用一个循环 for I := 0 to ADOQuery.FieldCount-1 do begin DBGrid1.Columns.ADD..... DBGrid1.Columns[I].Field := ADOQuery1.Fields[I].... end;
begin
if DSName.FindField(FdName) <> nil then exit;
DSName.Close;
try
with dt.Create(DSName) do
begin
FieldName := FdName;
DisplayLabel := FdName;
FieldKind := fkData;
Name := DSName.Name + 'DSDesigner' + inttostr(DsName.FieldCount);
index := DSName.FieldCount;
DataSet := DSName;
end;
except
on e: exception do
raise Exception.Create(E.Message);
end;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
Table1.Close;
Table1.DatabaseName := 'DBDEMOS';
Table1.TableName := 'clients.dbf';
ADDField('city',Table1,TStringField);
Table1.Open;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
Query1.Close;
Query1.DatabaseName := 'DBDEMOS';
ADDField('city',Query1,TStringField);
Query1.SQL.Text := 'select * from clients.dbf';
Query1.Open;
end;
于是我用代码实现,所以,我觉得:我的代码有意义。但我没有说你说的没有意义-----我最初的说法与你在一楼说的也是基本一致的。我之所以要贴出后来的代码,就是为了给楼主解决他在题目中说得很明确的问题,我并不是为了证明“有意义”与“无意义”。