我用ini文件连接sql server 数据库可是总有错误提示,请高手帮忙,在线等待(急!!!)(50分)

  • 主题发起人 diamond~
  • 开始时间
D

diamond~

Unregistered / Unconfirmed
GUEST, unregistred user!
ini文件内容:
[connection]
UserId=sa
Password=
Database=stx
DataServer=p1a0z2

procedure Tlogin.FormCreate(Sender: TObject);
var
IniFile: TIniFile;
UserId,Password: String;
DataServer: String;
begin
IniFile := TIniFile.Create(ExtractFilePath(ParamStr(0)) + '/user.ini');
UserId := InIFile.ReadString('Connection','UserId','');
Password := IniFile.ReadString('Connection','Password','');
dataserver:=inifile.readstring('connection','dateserver','');
Try
with da do
begin
adoConnection1.LoginPrompt := False;
adoConnection1.ConnectionString:='Provider=SQLOLEDB.1;Password='+Password+';Persist Security Info=False;User ID='+Userid+';Initial Catalog=sstx;data Source='+Dataserver+';';

adoConnection1.Connected := True;

end;
Except
Application.MessageBox('数据库连接失败!','数据服务器登录',MB_OK);
End;
end;
 
dataserver:=inifile.readstring('connection','dat[red]e[/red]server',''); // ???

好的办法是:
connstr := 'Provider=%s;Password=%s...';
...
format(connstr,[Provider,Password,...]);

其他问题:你的ini没有free吗?
 
free 是什么意思,
可不可以写的详细些
 
ini文件内容:
[connection]
UserId=sa
Password=
Database=stx
DataServer=p1a0z2

procedure Tlogin.FormCreate(Sender: TObject);
var
IniFile: TIniFile;
UserId,Password: String;
DataServer: String;
begin

IniFile := TIniFile.Create(ExtractFilePath(ParamStr(0)) + '/user.ini');
Try
UserId := InIFile.ReadString('Connection','UserId','');
Password := IniFile.ReadString('Connection','Password','');
dataserver:=inifile.readstring('connection','dateserver','');
Try
with da do
begin
adoConnection1.LoginPrompt := False;
adoConnection1.ConnectionString:='Provider=SQLOLEDB.1;Password='+Password+';Persist Security Info=False;User ID='+Userid+';Initial Catalog=sstx;data Source='+Dataserver+';';

adoConnection1.Connected := True;

end;
finally
IniFile.Free;
end;
Except
Application.MessageBox('数据库连接失败!','数据服务器登录',MB_OK);
End;
end;

-------------------------------------------------------

用上面的代码TEST
 
顶部