我想在我的開發環境中使用桌面版本的IB XE7,但無法使連接正常工作。在Rad Studio開發環境中將Delphi 10.1連接到Interbase XE7 Desktop
原始應用程序使用了IB的完整服務器版本,我現在想要在更低成本的單一PC類型應用程序上運行該應用程序,並選擇IB桌面版本。
Rad Studio 10.1 Berlin在W7 64bit虛擬機上運行。 FireDac是數據庫連接組件。 IB XE7 Desktop是開發PC上的數據庫服務器。
應用程序的目標是具有W7 32位的VM,以及該VM上的另一個IB XE7 Desktop。
我可以構建32位應用程序,並將FireDac連接組件協議字段更改爲「本地」而不是TCP/IP後,它將連接到目標PC上的IB XE7桌面(在VM中運行W7 32位)我在Stack Overflow中讀到的東西。
我無法工作的是開發環境中的數據庫連接。
我首先安裝了IB的64位版本,然後刪除它,並嘗試32位版本,結果相同。
在閱讀了一些在線連接問題後,我試着在服務器名稱字段中放入'gds_db'和'localhost/gds_db',但它仍然無法工作,儘管它確實改變了錯誤。
錯誤 - 什麼也沒有在服務器名稱
[FireDAC] [物理學] [IB]不可用的數據庫。把 'gds_db' 服務器名稱後
錯誤
[FireDAC] [物理學] [IB]無法完成網絡請求主辦 「gds_db」。
無法找到主機。
指定的名稱未在主機找到的文件或域名服務..
首次嘗試安裝64位的IB,然後取出找到的所有GSD文件,然後在註冊表項,並安裝32位版。問題依然存在。
注意:Database Workbench 5將OK連接到同一VM上的數據庫。
任何想法歡迎。
謝謝。
James F.
兩件事情:a)您需要檢查服務器的實際實例名稱。 iirc,IB的「sawn off」版本使用gds_db以外的東西。 b)查看\ windows \ system32 \ drivers \ etc中的'services'文件。它應該包含一個條目,例如命名服務器實例的「gds_db 3050/tcp#InterBase Server」。 – MartynA
順便說一句,你可能試着看看你是否可以使用IBX組件獲得連接。通過將IBConnection的數據庫名稱設置爲'LocalHost:D:\ Delphi \ Interbase \ Databases \ MA.GDB' – MartynA
,可以連接到本地IB XE7服務器.GDB是從winXP開始的錯誤文件擴展名 –