您好,登錄后才能下訂單哦!
下載UniDAC最新版本
Universal Data Access Components (UniDAC)是一款通用數據庫訪問組件,提供了多個數據庫的直接訪問,如針對Windows的Delphi, C++Builder, Lazarus (以及 Free Pascal) , Mac OS X, iOS, Android, Linux和64和32位的FreeBSD等等。我們將長期的經驗集于這個小組件,提供統一的數據庫連接訪問(如oracle、微軟SQL等等)。這意味著您可以在您的項目之間輕松地切換不同的數據庫,以及創建跨數據庫應用程序接口。
本篇文章介紹了連接到具有不同提供程序的數據庫的過程,以及連接參數的含義。
每個數據庫服務器都需要自己的一組參數用于連接(用戶名、密碼等)。一些參數對于多個服務器是相同的,但參數含義可能因服務器而異。工發組織為受支持的數據庫服務器提供所有類型的參數。如果某個參數不用于某個提供程序,它將在“連接”對話框中被禁用,而不用于連接。工發組織支持以下參數:
這是應該設置的第一個參數。它指定將用于連接的提供程序和其他可用參數。
這些屬性用于每個數據庫提供程序對客戶端應用程序進行身份驗證。
服務器
通常,此屬性用于提供數據庫服務器所在網絡中計算機的名稱或IP地址。如果SQL Server、MySQL和Interbase提供程序的server屬性為空,則unidac將嘗試連接到localhost。
Oracle——在客戶機模式下,您應該指定出現在tnsnames.ora配置文件中的服務器名稱。您還可以設置homename選項來指定要在客戶機模式下使用的已安裝客戶機。
如果在直接模式下連接到Oracle服務器,則應以特殊格式指定server屬性的值:host:port:sid。主機是服務器的IP地址或DNS名稱,端口是服務器偵聽的端口號,sid是服務器的Oracle系統標識符。
SQL Server——應指定運行SQL Server的網絡中計算機的名稱或IP地址。如果您的SQL Server使用的端口與默認端口不同,則可以通過以下方式連接到該端口,指定端口號:hostname、port number。
ASE、MySQL和PostgreSQL——您應該指定運行數據庫服務器的網絡中計算機的名稱或IP地址。
ODBC——您應該指定ODBC數據源名稱(DSN)、包含數據源信息的文件名(文件DSN)或ODBC連接字符串
DB2——應該為服務器屬性指定數據庫名稱
此屬性用于Access、Advantage、SAP Sybase ASE、DBF、Interbase、MySQL、NextUSB、PostgreSQL、SQL Server和SQLite提供程序。它為連接指定初始數據庫。在SAP Sybase ASE、MySQL和SQL Server上,當連接處于活動狀態而不重新連接時,可以更改數據庫值。如果未分配數據庫,UniDAC的行為將取決于選定的provider:
MySQL——將不選擇當前數據庫。這意味著您需要在查詢中顯式指定數據庫名稱。
SQL Server和ASE——當前SQL Server登錄的默認數據庫將用作連接的默認數據庫。為了連接到SQL Server Compact Edition,此屬性用于提供數據庫文件名。
此屬性用于SAP Sybase ASE、MySQL和PostgreSQL提供程序。它指定TCP/IP連接的端口號。
MySQL——默認值為3306。
PostgreSQL——默認值為5432。
ASE——默認值為5000。
除了上面描述的連接選項之外,還有幾個特定的選項來管理每個提供者的連接行為。這些選項在每個提供程序的特定于提供程序的Notes文章中進行了描述:Oracle、SQL Server、MySQL、Interbase、PostgreSQL和SQLite。打開與您感興趣的提供者對應的文章,并在文章中找到tuniconnection的特定選項描述。下面將介紹幾個重要的特定連接選項。
使用Oracle提供程序,您可以以兩種模式連接到服務器:客戶機模式和直接模式。以客戶機模式連接需要在客戶機上安裝Oracle客戶機。直接模式下的連接不需要Oracle客戶機,但是這種模式有一定的局限性。有關更多信息,請參閱文章中的Connecting in Direct Mode部分(將工發組織與Oracle結合使用)。
SQL Server提供程序可以通過三種客戶端類型之一進行連接,這些客戶端類型可以使用特定于OLEDBProvider的tuniconnection選項進行更改。默認情況下,此選項設置為prauto。此值表示提供程序將首先嘗試打開SQL本機提供程序。如果此提供程序不可用,則將打開OLE DB提供程序。要連接到SQL Server Compact版本,必須將OledBProvider選項設置為prcompact。此值使名稱以compact開頭的所有特定選項生效。應在CompactVersion特定選項中指定要使用的SQL Server Compact版本。默認情況下,將根據數據庫文件版本選擇SQL Server Compact版本。如果該文件不存在,或者該文件不是有效的數據庫文件,則將使用CompactVersion選項來確定要加載的服務器版本。
mysql提供程序可以直接連接到mysql服務器,也可以使用客戶端庫libmysqld.dll。此行為由直接特定選項控制。默認情況下,Direct設置為true。如果直接切換到false,則需要在應用程序中部署libmysqld.dll。
為了連接到帶有mysql embedded server的數據庫,應該將embedded-specific選項的值切換為true。其默認值為假。如果Embedded設置為true,則忽略direct的值。帶有共享目錄的嵌入式服務器庫應該與應用程序一起部署。數據路徑應該在嵌入式服務器的配置文件中指定。
Intelbase提供程序可以通過TCP/IP、NetBEUI和SPX等網絡協議連接到服務器。將用于連接的網絡協議可以通過特定于協議的選項指定。
PostgreSQL提供程序直接連接到PostgreSQL服務器,不使用PostgreSQL客戶端庫。
SQLite提供程序可以使用sqlite客戶端庫sqlite3連接到數據庫。您可以使用外部SQLite3庫或嵌入式sqlite3引擎。此行為由選項控制。默認情況下,direct設置為false,在這種情況下,sqlite提供程序在path環境變量中指定的目錄中搜索客戶端庫。如果數據庫文件不存在,則SQLite可以自動創建該文件。為此,應使用ForceCreateDatabase特定選項。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。