我正在使用delphi 7和oracle。我想使用TADOConnection通过delphi动态连接oracle。我创建了一个包含3个编辑框的表单,用于服务器名称,用户名,密码和一个按钮“连接”。我尝试通过构建ConnectionString静态连接。现在我尝试连接“连接”按钮单击,具体取决于用户在服务器,用户名和密码中输入值。 我怎样才能做到这一点。有什么建议。谢谢你的帮助。
答案 0 :(得分:2)
假设您已经安装了oracle客户端(Oracle Provide for OLEDB),有一个工作的tnsnames等等。因此,例如,连接到实例“ORCL”登录用户“HR”,密码为“password”,连接字符串应该是:
Provider = OraOLEDB.Oracle.1; Data Source = ORCL; User ID = HR;密码=密码
从组件中取出字符串,它看起来像:
Procedure TForm1.Button1Click(Sender: TObject);
begin
ADOConnection1.ConnectionString:= 'Provider=OraOLEDB.Oracle.1;' +
'Data Source=' + Edit1.Text + ';' +
'Data Source=' + Edit2.Text + ';' +
'Password=' + Edit3.Text;
ADOConnection1.LoginPrompt:= False;
ADOConnection1.Connected:= True;
end;
答案 1 :(得分:0)
您必须更改ConnectionString
组件的TAdoConnection
属性,您可以从ConnectionStrings网站
以下是与Microsoft提供商进行ADO连接的方法:
Provider =msdaora; Data Source =MyOracleDB; User Id =myUsername; Password =myPassword;
用户名ID&密码,您必须用您的编辑框替换它们。
<强>更新强>
代码你写的是这样的:
AdoConnection.Close;
AdoConnection.ConnectionString := format('Provider=msdaora; Data Source =MyOracleDB; User Id = %s; Password = %s',edtUserName.Text,edtPassword.Text]);
';
AdoConnection.Open;