DELPHI 用INI 文件设置数据库连接

本文介绍了一个使用DELPHI通过读取INI文件来设置数据库连接参数的方法。该方法利用了TIniFile组件从外部配置文件中读取数据库连接信息,包括用户名、密码、服务器名称及数据库名称等,并将其应用于ADOConnection组件进行数据库连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DELPHI 用INI 文件设置数据库连接 实例

unit Unit_DM;

interface

uses
SysUtils, Classes, DB, ADODB,inifiles,windows,forms,controls;

[@more@]

type
TDM = class(TDataModule)
ADOConn: TADOConnection;
DS_BomFind: TDataSource;
Qry_BomFind: TADOQuery;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
userIdStr,passwordStr,ServerNameStr,dataBaseNameStr,inifilePath:string;
end;

var
DM: TDM;

implementation

{$R *.dfm}


procedure TDM.DataModuleCreate(Sender: TObject);
var
conn:tinifile;

begin
//数据库连接设置。 conn.ini
iniFilePath:=ExtractFilePath(application.ExeName); //获取INI文件路径。
if inifilePath[length(inifilePath)]='' then
begin
iniFilePath:=iniFilePath+'conn.ini';
conn:=tinifile.Create(iniFilePath);
end
else
begin
iniFilePath:=iniFilePath+'conn.ini';
conn:=tiniFile.Create(inifilePath);
end;
if not FileExists(iniFilePath) then
begin
application.MessageBox('配置文件不存在!','提示',mb_OK) ;
APplication.Terminate;
end;
// providerStr:=conn.ReadString('config','provider','');
UserIDStr:=conn.ReadString('config','userID','');
passwordStr:=conn.ReadString('config','password','');
ServerNameStr:=conn.ReadString('config','ServerName','');
dataBaseNameStr:=conn.ReadString('config','DataBaseName','');
if (ServerNameStr='') or (DatabaseNameStr='') then
begin
application.MessageBox('数据库配置不正确,请重新配置!','提示',mb_ok);
Application.Terminate;
end;
ADOconn.Close;
ADOconn.ConnectionString:='';
ADOconn.ConnectionString:='Provider=SQLOLEDB.1;User ID='+UserIDstr+';Password='+Passwordstr+ ';Data Source='+ServerNameStr+ ';Initial Catalog='+DatabaseNamestr;
// adoconn.ConnectionString:='Provider='+Providerstr+';User ID='+UserIDstr+';Password='+Passwordstr+ ';Data Source='+DataSourceStr+ ';Initial Catalog='+DatabaseNamestr;

try
adoconn.Connected:=true;
except
application.MessageBox('数据库配置不正确,请重新配置!','提示',mb_ok);
adoconn.Connected:=false;
application.Terminate;
end;
end;

end.

下面是conn.INI文件内容:

[config]
UserID=sa
Password=密码
DataSource=服务器名或IP地址
DatabaseName=用户数据库名

(完)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/729024/viewspace-1020688/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/729024/viewspace-1020688/

//----------------------------------------------------------// //------- Delphi对保存数据库连接信息的Ini文件的操作类 ------// //------- 作用:封装对ini文件的操作 ------// //------- 类名称: IniOptions ------// //------- 属性如下: ------// //------- FconfigAutoLogon: Boolean (是否自动登录) ------// //------- FconfigAuthenticationStyle: string ------// //------- (表示身份验证方式,WindowsNT/SQLServer) ------// //------- FconfigServerName: string (服务器名称) ------// //------- FconfigUserID: string (登录名) ------// //------- FconfigPassword: string (登录密码) ------// //------- FconfigDataBaseName: string(数据库名) ------// //------- 方法如下: ------// //------- Function getIniFileAbsolutePath():string; ------// //------- 1.获取Ini文件的绝对路径 ------// //------- Function IniFileExists():Boolean; ------// //------- 2.判断Ini文件是否存在 ------// //------- Function createNewIniFile():Boolean; ------// //------- 3.创建新的Ini文件(默认配置) ------// //------- procedure LoadSettings(Ini: TIniFile); ------// //------- 4.从Ini文件中读取配置信息到属性值中 ------// //------- procedure SaveSettings(Ini: TIniFile); ------// //------- 5.将属性值保存到Ini文件中 ------// //------- procedure LoadFromIniFile(); ------// //------- 6.从Init文件中读取信息,调用1,2,3,4 ------// //------- procedure SaveToIniFile(); ------// //------- 7.保存到Ini文件,调用1,2,3,5 ------// //------- 作者: 苏贵阳 2010-8-15 ------// //-----------------------------------------------------------// //------- IniOptions 使用说明 ------// //------- 1.调用单元 uses IniOptionsUnit; ------// //------- 2.IniOptions.LoadFromIniFile(); ------// //------- CB_FWQMC.Text := IniOptions.configServerName ------// //----- 3. IniOptions.configDataBaseName:=CB_SJKM.Text; -----// //------- IniOptions.SaveToIniFile(); ------// //-----------------------------------------------------------//
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值