Delphi使用INI连接数据库
在TDataModule里面进行读取INI文件配置数据库。
unit Unit2;
interface
uses
SysUtils, Classes, DB, ADODB,INIFiles;
type
TDataModule2 = class(TDataModule)
con1: TADOConnection;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DataModule2: TDataModule2;
implementation
{$R *.dfm}
procedure TDataModule2.DataModuleCreate(Sender: TObject);
var
DataSource,InitialCatalog,UserId,Password : string;
ini:string;
imif:TIniFile;
begin
ini:=ExtractFilePath(ParamStr((0))+'db.ini');
imif:=TIniFile.Create(ini);
DataSource:=imif.Readstring('sqlserver','Data Source','');
InitialCatalog:=imif.Readstring('sqlserver','Initial Catalog','');
UserId:=imif.Readstring('sqlserver','user id','');
Password:=imif.Readstring('sqlserver','password','');
con1.ConnectionString :='Provider=SQLOLEDB.1;Password='+Password+';Persist Security Info=True;User ID='+UserId+';Initial Catalog='+InitialCatalog+';Data Source='+DataSource;
con1.Connected := True;
con1.loginprompt :=false;
imif.Free;
end;
end.
不停的报错。无效的授权说明
[sqlserver]
Data Source=192.168.7.11\SQL2005
Initial Catalog=HC_sql
user id=sa
password=sasa
[解决办法]
Datasource后为什么加个\sql2005?
[解决办法]
192.168.7.11\SQL2005
你这台服务器的SQL是否有实例叫“SQL2005”的,如没有而是一个缺省的实例就不要加上。
[解决办法]
装的是sqlexpress?