我写的一个程序在服务器上运行正常,但在客户端台子上运行提示:[DBNETLIB][CONNECTIONOPEN(CONNECT()].SQL SERVER 不存在或拒绝访问!
我是用INI文件连接的!
INI文件内容如下:
[Connect]
Provider=SQLOLEDB.1
ServerName=192.168.1.70
DataBaseName=YBerp
Username=sa
PassWord=然后,我在其它的电脑中运行!又有提示:
cann't open database requested in login 'yberp',login fails.但是点完这些信息框,程序都可以运行!
不知道是什么原因?
我是用INI文件连接的!
INI文件内容如下:
[Connect]
Provider=SQLOLEDB.1
ServerName=192.168.1.70
DataBaseName=YBerp
Username=sa
PassWord=然后,我在其它的电脑中运行!又有提示:
cann't open database requested in login 'yberp',login fails.但是点完这些信息框,程序都可以运行!
不知道是什么原因?
ADOCON.CONNECTED:=TRUE;
不然怎么可以动行程序,程序是可以用,只是在之前提示这两个错误,点确定之后,还是可以连上!不知是什么原因?
SysUtils, Classes, DB, ADODB, frxClass, frxDBSet;type
TDM = class(TDataModule)
ADOCon: TADOConnection;
ShareQuery: TADOQuery;
PrintQuery: TADOQuery;
PrintDetailQuery: TADOQuery;
DataSource1: TDataSource;
DataSource2: TDataSource;
ShareStoredProc: TADOStoredProc;
frxDBDataset1: TfrxDBDataset;
frxDBDataset2: TfrxDBDataset;
frxReport1: TfrxReport;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
DM: TDM;implementation
uses Dialogs,IniFiles,Forms;
{$R *.dfm}procedure TDM.DataModuleCreate(Sender: TObject);
var IniFile:Tinifile;
filename,Provider,UserName,PassWord:string;
DataBaseName:string;
ServerName,conn:string;
dns:string;
begin
ADOCon.Connected:=false;
ADOCon.ConnectionString:='';
filename:=ExtractFilePath(Paramstr(0))+'Sys.ini';
showmessage(filename);
//{
try
if not fileexists(filename) then
begin
MessageDlg('数据库连接配置文件sys.ini不存在',mtInformation,[mbOK],0);
Application.Terminate;
end;
IniFile:=TIniFile.Create(filename);
Provider:=IniFile.ReadString('Connect','Provider','SQLOLEDB.1');
UserName:=IniFile.ReadString('connect','username','sa');
PassWord:=IniFile.ReadString('connect','password','');
DatabaseName:=IniFile.ReadString('connect','databasename','YBERP'); //数据库名
Servername:=IniFile.ReadString('connect','servername','(local)'); //数据源名
conn:='provider='+provider+';Initial catalog='+Databasename+';user id='+UserName;
conn:=conn+';password='+password+';Data Source='+Servername;
showmessage(conn);
ADOCon.ConnectionString:=conn;
ADOCon.Connected:=True;
ADOCon.LoginPrompt:=false;
except
ShowMessage('没有可用的数据库连接');
end;
IniFile.Free;
// }
end;end.
AdoConnection 的Connected 属性 为True 时会先去连接你测试时的默认连接哟!
正式使用时改为False