【PB】DBMS is not supported in your current installation解決方案

來源:互聯網
上載者:User

第一種情況:

如果單擊PB環境中的db profile工具列按鈕,然後選擇相應的介面,最後單擊“new...”按鈕時出現提示時

解決方案:

我們在使用PowerBuilder的直聯結口(native drivers)聯結諸如Sybase或Oracle這樣的大型資料庫時,有時會發生聯不上庫的情況, 並且遇到提示資訊 “DBMS XXX is not supported inyour current installation”。

  產生這種現象的原因是我們沒有正確地安裝或設定好PB的native driver或資料庫的用戶端軟體(如Sybase的Open Client)。具體的有以下三個原因:

1. PowerBuilder安裝的是32位的,而資料庫的用戶端軟體安裝的卻是16位的;或PowerBuilder安裝的是16位的,而資料庫的用戶端軟體安裝的卻是32位的。

2. native driver的DLLs所在的路徑沒有包括在機器的系統路徑中。

3. 資料庫的用戶端軟體的DLLs所在的路徑沒有包括在機器的系統路徑中。

  對上述三種原因的解決方案如下:

1. 確認PB和資料庫的用戶端軟體都是32位的或都是16位的。

2. 將PB的運行環境的路徑(5.0 32-bit long name: \Program Files\CommonFiles\Poweresoft Shared, 5.0 32-bit short name或5.0 16-bit: \pwrs\sys32,6.0: \Program Files\Powersoft\shared)加到機器的系統路徑中(autoexec.bat中的path)。或者,比如用的sqlserver資料庫,把ntwdblib.dll拷到system32檔案夾下。

3. 將資料庫的用戶端軟體的DLLs所在的路徑(如Sybase Open Client的路徑\sybase\bin, Oracle SQL*NET的路徑\orawin\sys32)加到機器的系統路徑中。

第二種情況:

當第一種情況通過沒有問題時,而在程式運行時出現提示時

解決方案:

出現這個錯誤的原因不是 SQL ANYWHERE 的問題,是 SQLCA 的 DBMS 屬性沒有設定正確。大多數人在使用 PB 開發程式時關於 SQLCA 的屬性設定往往愛用 ProfileString 函數,其中的檔案名稱參數往往又不帶路徑或者又使用了絕對路徑。不管是那種情況,都可能出現
ProfileString 找不到檔案的情況。這樣 SQLCA 的 DBMS 屬性就沒有被賦值。所以才會出現 "DBMS NOT Support ..."字樣的資訊。
當然如果是相對路徑的話,只會在 PB 開發環境中出現,這時只要用 PB 的文字編輯器開啟 INI 檔案一次,這樣 PB 的目前的目錄又回到了 INI 檔案所在目錄
還有許多的初學者,採用的 INI 檔案還是 PB.INI ,即:Sqlca.dbms = ProfileString ( "pb.ini", "database", "dbms", "") ,pb的安裝目錄裡存在這個檔案,所以在設定資料庫連接的時候不要用這個檔案名稱,PB 每次串連一個不同的資料庫都會更改 PB.iNI 。所以經常出現這種情況。而且這種程式放到另外一台機上不能運行,除非將 PB.INI 也 Copy 了

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.