【问题标题】:How to make database connection with oracle in delphi xe2 using TADOConnection?如何使用TADOConnection在delphi xe2中与oracle建立数据库连接?
【发布时间】:2012-11-21 12:13:56
【问题描述】:

我正在尝试使用 TADOConnection 组件与 Oracle 建立数据库连接。我在表格中添加了ADOConnection1。然后我将Provider 属性设置为“SQLOLEDB”。假设数据库的用户名和密码分别为 111 和 222。

现在在表单的OnShow 事件上,我正在尝试建立数据库连接。

我写了一个由OnShow 事件处理程序调用的MakeConnection 函数:

function Tabc.MakeConnection : boolean;
var 
  ConnString : string;
begin
  result := false;
  try
    ADOConnection1 := TADOConnection.Create(nil);
    ADOConnection1.ConnectionString := ConnString;
    ADOConnection1.LoginPrompt := false;
    ADOConnection1.Open;
    result := true;
  except
    on E : Exception do
    begin
      exit;
    end;
  end;
end;

我的问题是,ConnString 变量的格式应该是什么?我应该使用“SQLOLEDB”作为提供程序还是其他什么?

更新:

之前我创建了一个到 Microsoft SQL Server 的连接,其连接字符串格式为:

Provider=SQLNCLI10.1;Password=222;Persist Security Info=False;User ID= 111;Initial Catalog= abcde;Data Source= datasource\SQLEXPRESS;Initial File Name="";Server SPN=""

【问题讨论】:

    标签: database delphi delphi-xe2


    【解决方案1】:

    1. Oracle 数据库提供商:

    要连接到 Oracle 数据库,您至少需要在当前情况下使用不同的连接提供程序。 Microsoft 有自己的Microsoft OLE DB Provider for Oracle,但它已被弃用,正如参考文献中所述,您应该避免使用它(链接到我添加的 Oracle 的 OLE DB 提供程序):

    适用于 Oracle 的 Microsoft OLE DB 提供程序

    此功能将在 Windows 的未来版本中删除。避免 在新的开发工作中使用此功能,并计划修改 当前使用此功能的应用程序。请改用Oracle’s OLE DB provider

    Oracle Provider for OLE DB 然后您可以在连接字符串中使用this way

    Provider=OraOLEDB.Oracle
    

    2. Oracle 数据库连接字符串属性:

    关于 Oracle 数据库特定连接字符串属性的下一个问题,您最好关注the reference

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-12
      • 2012-01-25
      • 1970-01-01
      • 2022-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-08
      相关资源
      最近更新 更多