社区
数据库相关
帖子详情
如何有代碼實現 tadoquery 設計時 fields editor --> add all fields
foxdelphi
2007-04-02 11:09:51
現 因tadoquery.sql.text 會有不同
故 tadoquery 的 fields 也是變化的,
想實現:
如何有代碼實現 tadoquery 設計時 fields editor --> add all fields
...全文
258
13
打赏
收藏
如何有代碼實現 tadoquery 設計時 fields editor --> add all fields
現 因tadoquery.sql.text 會有不同 故 tadoquery 的 fields 也是變化的, 想實現: 如何有代碼實現 tadoquery 設計時 fields editor --> add all fields
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lihuasoft
2007-04-05
打赏
举报
回复
http://community.csdn.net/Expert/topic/5438/5438861.xml?temp=.6551477
谢楼主了
lihuasoft
2007-04-05
打赏
举报
回复
呵呵! 何以见得?
另:楼主已另开贴给分,谢谢楼主.
lwk_hlj
2007-04-05
打赏
举报
回复
说实话,低调做人
你的代码真的没有意义!
lihuasoft
2007-04-05
打赏
举报
回复
TO 楼主:是的。
TO :lwk_hlj(阿凯(学习oralce中))
楼主的题目是: “如何有代碼實現 tadoquery 設計時 fields editor --> add all fields ”
于是我用代码实现,所以,我觉得:我的代码有意义。但我没有说你说的没有意义-----我最初的说法与你在一楼说的也是基本一致的。我之所以要贴出后来的代码,就是为了给楼主解决他在题目中说得很明确的问题,我并不是为了证明“有意义”与“无意义”。
foxdelphi
2007-04-05
打赏
举报
回复
分不是重要的,重要的是大家的熱心,謝了!
lihuasoft
2007-04-03
打赏
举报
回复
请问楼主:你说的thank you是向哪一位说的?我的代码一分也不值吗?
foxdelphi
2007-04-03
打赏
举报
回复
thank you
lihuasoft
2007-04-02
打赏
举报
回复
在SQL查询时做就行。select 字段一,字段二,字段三 from 表
只查询你要的字段。
至于DBGrid的Columns,一般是自动的。假设不是自动对应DataSet,你也可以用一个循环 for I := 0 to ADOQuery.FieldCount-1 do begin DBGrid1.Columns.ADD..... DBGrid1.Columns[I].Field := ADOQuery1.Fields[I].... end;
netfly
2007-04-02
打赏
举报
回复
如果你是想在IDE里实现这个功能,可以直接看VCL里Property Editor目录下的DSDesign单元,就是这个属性编辑器
在运行时就不用了吧,呵呵
foxdelphi
2007-04-02
打赏
举报
回复
本人是想實現 cxgrid 中的 column 根據 tadoquery.field 的變化而變化
lwk_hlj
2007-04-02
打赏
举报
回复
你的想法没有意义
因为当tadoquery的sql变化后,tadoquery,打开后,新的sql对应的字段对像就已经建立了
访问时就adoquery.fields[0].as...
lihuasoft
2007-04-02
打赏
举报
回复
这样就可以一个字段一个字段的添加,等效于Add All Fields。
注意,每个字段都是有类型的,例如上面我是添加了一个TStringField类型的字段“city”。
lihuasoft
2007-04-02
打赏
举报
回复
从网上找了一个添加字段的过程,我分别用Table和Query试验成功。ADOQuery是一样的。
procedure AddField(FdName: string; DSName: TDataSet; dt: TFieldClass);
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;
BCB存取图片等信息!
<!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"
C++ Builder 学习资料
Edit2->Text =
ADO
Query
1->
Field
s->
Field
s[1]->AsString;
ADO
Query
1->Next(); Edit3->Text =
ADO
Query
1->
Field
s->
Field
s[1]->AsString; ★往数据集里添加纪录 T
ADO
Query
1->Edit(); T
ADO
Query
1->...
C++Builder 高级编程技巧
Edit2->Text =
ADO
Query
1->
Field
s->
Field
s[1]->AsString;
ADO
Query
1->Next(); Edit3->Text =
ADO
Query
1->
Field
s->
Field
s[1]->AsString; ★ 往数据集里添加纪录 T
ADO
Query
1->Edit(); ...
Delphi TClientDataSet的使用
开发者可通过单击属性编辑器中该属性编辑按钮,或在该控件上单击右键选择弹出菜单中的"
Field
s
Editor
"菜单进行字段编辑。设置完此属性后,实际上就相当于定义了表的结构;如果想装入已有的数据表的结构和数据,可...
在C++Builder 5中使用
ADO
数据库编程 (转)
在
ADO
DataSet1控件上右击,选
Field
s
Editor
…->右击->选
Add
field
s… 或
Add
all
field
s,务必选中"Details"项,这是我们在Shape语句中定义的用于子表连接主表的数据集。 ---- 5. 设置 ----
ADO
DataSet2的...
数据库相关
2,507
社区成员
88,453
社区内容
发帖
与我相关
我的任务
数据库相关
Delphi 数据库相关
复制链接
扫一扫
分享
社区描述
Delphi 数据库相关
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章