完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
Delphi中数据库控制组件
数据库控制组件是数据库程序的核心。共有两类:数据库存取控制组件、数据库显示控制组件。在Delphi中,引入了一个“数据来源”的概念。其作用是在数据库的具体数据与程序中显示的数据之间做中介,即在数据库存取控制组件和数据库显示控制组件间做媒介。借助数据来源可以在应用程序执行时将数据存取组件与数据显示组件独立分开,动态操作、切换这两种组件。下面以实例分别对这两种组件中的常用组件进行介绍。 (1)数据库存取控制组件: 负责连接数据库本身,不包含数据的显示与输入。 TDatabase组件: Database1.AliasName:='MYDATABASE'; {指定数据库Database1的别名是MYDATABASE } Database1.DatabaseName:=my_database; {在程序中数据库Database1的名称是my_database } Database1.connected :=True; { Database1连接别名是MYDATABASE 的数据库,并在程序中区名是my_database } TTable组件: Table1.DatabaseName:='my_database'; {Table1表所在的数据库是my_database ,即对应别名是MYDATABASE 的数据库} Table1.TableName:='my_table.dbf'; {Table1表对应数据库my_database 中的表my_table.dbf} Table1.Active:=True; {激活Table1} TQuery组件: Query1.DatabaseName:='my_database'; {查询Querye1所在的数据库是my_database ,即对应别名是MYDATABASE 的数据库} Query1.SQL.Add('select * from my_table'); {查询对应的SQL语句是select * from my_table } Query1.Active:=True; {激活查询Query1} TBatchMove组件: BatchMove1.Mode:=batAppend; {批量记录移动的方式是追加记录} BatchMove1.RecordCount:=0 {移动符合条件的所有记录,如果为不等于0的数值,则移动的记录数量为指定的数值} BatchMove1.Source:=Query1; {指定移动数据来源是Query1} BatchMove1.Destination:=Table1; {指定目标数据的位置是表Table1} BatchMove1.Execute; {执行批量记录移动} TStoredProc组件: StoredProc1.DatabaseName:='my_database'; {存储过程StoredProc1所在的数据库是my_database} StoredProc1.StoredProcName:='my_proc'; {数据库my_database 中存储过程的名称是my_proc } StoredProc1.Params.Clear; {清除原有存储过程的参数} StoredProc1.Params.CreateParam(ftInteger, 'no',ptInput); {增加存储过程参数no} StoredProc1.Prepare; {绑定存储过程的参数} StoredProc1.ExecProc; {执行数据库my_database中的存储过程my_proc} (2)数据库显示控制组件: 提供建立用户界面的基本窗口类型控制组件,让使用者可以输入编辑、显示数据。 TDataSource组件: DataSource1.DataSet:=Query1; {数据来源DataSource1对应查询Query1的结果} TDBGrid组件: DBGrid1.DataSource:= DataSource1; {数据库内容显示构件DBGrid1的数据来源是DataSource1} TDBText组件: DBText1.DataSource:= DataSource1; {数据库内存字段显示构件DBText1的数据来源是DataSource1} DBText1.DataField:= 'main_key'; {数据库内存字段显示构件DBText1 对应的表的字段名称是main_key } |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
12131 浏览 2 评论
4466 浏览 3 评论
3696 浏览 5 评论
9524 浏览 47 评论
4499 浏览 9 评论
706浏览 0评论
507浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 02:19 , Processed in 0.696856 second(s), Total 52, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号