Delphi如何打开DBF数据库
数据库 如何 打开 Delphi dbf
2023-09-27 14:29:12 时间
Delphi语言,无论Delphi7、Delphi2007或者Delphi XE2或3,无需安装其它附加的部件,就可以实现DBF文件的打开及相关操作,网络上很多要用到什么ADO引擎的,其实未必,只有安装的Delphi有BDE即可。
实例操作为例:
1、新添一个Tform,在上面添加Table、Datasource和Datagrid等组件,见下图:
2、设置Table1的DatabaseName属性为dBase files,Datasource1的DataSet属性为Table1,DataGrid1的DataSource为DataSource1
3、在Button1的单击事件中添加如下代码:
procedure TForm1.Button1Click(Sender: TObject); var filenm,path:string; begin if self.OpenDialog1.Execute then begin filenm:=extractfilename(self.OpenDialog1.filename); path:=extractfiledir(self.OpenDialog1.filename); self.Table1.Active:=false; self.Table1.databasename:=path; self.Table1.tablename:=filenm ; self.Table1.Active:=true; end; end;
即可实现dbf数据文件的打开
4、整个程序的代码如下:
unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Grids, Vcl.DBGrids, Data.DB, Bde.DBTables; type TForm1 = class(TForm) Table1: TTable; DataSource1: TDataSource; DBGrid1: TDBGrid; Button1: TButton; OpenDialog1: TOpenDialog; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var filenm,path:string; begin if self.OpenDialog1.Execute then begin filenm:=extractfilename(self.OpenDialog1.filename); path:=extractfiledir(self.OpenDialog1.filename); self.Table1.Active:=false; self.Table1.databasename:=path; self.Table1.tablename:=filenm ; self.Table1.Active:=true; end; end; end.
以上代码在Delphi XE3和XE4下运行通过,可以打开dbf文件,并自动在DataGrid1中显示所有数据。
相关文章
- mysql中,如何查看数据库元数据(metadata)的字符集?
- 如何使用T-SQL备份还原数据库及c#如何调用执行? C#中索引器的作用和实现。 jquery控制元素的隐藏和显示的几种方法。 localStorage、sessionStorage用法总结 在AspNetCore中扩展Log系列 - 介绍开源类库的使用(一) span<T>之高性能字符串操作实测
- C#实现如何判断一个数组中是否有重复的元素 返回一个数组升序排列后的位置信息--C#程序举例 求生欲很强的数据库 别跟我谈EF抵抗并发,敢问你到底会不会用EntityFramework
- 什么是平面文件数据库? 如何导入多种格式的文件:DSV、JSON、XML?
- 如何用Perl访问SQLite数据库
- 国产数据库OpenGauss--在CentOS7.x系统中安装单节点集群、验证及简单数据管理
- CSDN日报191022:目标检测;Java、数据库干货分享
- python通过pymysql连接mysql数据库
- 【Docker】安装Presto连接Hive、mysql、oracle、postgresql、SQL server等7种类型数据库
- 数据库锁
- 【云原生】内存数据库如何发挥内存优势
- 如何重新启动像MongoDB这样的NoSQL数据库服务?
- [mysql]MySQL数据库如何导出
- 数据库死锁实例分析及解决方法
- 虚拟主机如何连接MYSQL数据库呢?
- JDBC 通过PreparedStatement 对数据库进行增删改查
- MySQL-数据库多表关联查询太慢,如何进行SQL语句优化
- 为什么数据库事务会出现未知状态,如何处理
- 浅析MySQL中的计算列(Generated Column列)与计算字段的介绍与应用-如何让数据库中某个字段随时间自动更新
- 在数据库中如何快速查询数据,处理方法
- 数据库设计之从0到1 教你如何设计E-R图
- 如何将上传图片直接保存至SQL Server数据库中
- 数据库原理及MySQL应用 | 约束
- (4.33)sql server2014内存数据库(内存中OLTP(In-Memory OLTP))
- 异步IO数据库队列缓存