您的当前位置:首页delphi数据库之不用数据源以access为例(其他未试过)

delphi数据库之不用数据源以access为例(其他未试过)

2020-11-09 来源:世旅网

在我做好学生管理系统时,发现要使用本软件必须配置 数据 库 的 数据 源。于是我就想弄个 脱离 数据 源的版本。 构造思想: 650) this.width=650;" src="http://cdn.verydemo.com/upload/2013_06_17/13714209463650.jpg" title="datafile.jpg" /> 在con1的 c

在我做好学生管理系统时,发现要使用本软件必须配置数据库的数据源。于是我就想弄个脱离数据源的版本。

构造思想:

在con1的connectionstring有链接数据库文件作为数据源的做法,那么我们可以用数据库文件配置数据源。

于是百度了一下Data Source = 数据源路径。而student数据源在注册表中注册过,student数据源名称等价于路径。

思路:

第一步:马上想到要获得数据库所在的绝对路径。

第二步:代码编写ConnectionString,Provider要写完整数据提供者的驱动名称(如

Provider=Microsoft.Jet.OleDb.4.0(ACCESS数据引擎)

),而Data Source写为绝对路径。


技术关键:

1.获得程序所在目录,构造绝对路径:

sDBPath = extractFilepath(application.ExeName)+'dataname.mdb';

2.con1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + sDBPath +';';

步骤:

一:有这么一个界面

二、 先修改con1的属性


修改adoquery的属性

在form2添加onActivate事件(窗口激活事件)代码如下,

procedure TForm2.FormActivate(Sender: TObject);
 var
 sDBPath : string;
begin
 sDBPath := extractFilepath(application.ExeName) + 'students.mdb';
 ADOQuery1.Active := false;
 con1.Connected := false;
 ADOQuery1.SQL.Clear;
 ADOQuery1.SQL.Add('select * from admins'); //这句看窗口刚刚建立是否要数据库而定要写不写。
 //User ID=Admin;数据库有用户名的相应的加上
 //填写connectionstring
 con1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + sDBPath +';';
 con1.Connected := true;
 ADOQuery1.Active := true;
end;


这样就完成数据库脱离数据源的配置。

样例代码 http://pan.baidu.com/share/link?shareid=187085761&uk=2065228996


lilin9105

显示全文