powerbuilder9 串連 oracle 10g

來源:互聯網
上載者:User
簡單的說:

1、找(可在安裝oracle用戶端的機子)oci.dll 和 oraociei10.dll  tnsnames.ora這三個檔案,放在你的應用程式目錄下即可

2、還得有個 tnsnames.ora 檔案可用記事本開啟 編輯

3、如果提示 不能載入 oci.DLL 檔案,說明你的電腦系統老,沒有 msvcr71.DLL 檔案,同樣放在你的程式目錄下 或放在系統檔案目錄下

4、如果看到表的資料中  中文是亂碼(中文顯示'???'),你就在你的系統的註冊表中  註冊一個值 即可

 

詳情  請參看下面:

 

 

說明:oracle10g免裝用戶端發布和以前版本的發布可能很不一樣,因為沒有鑽研過oracle9i以前版本的發布,所以這裡不敢妄評。但oracle10g的發布確實非常簡單。本次資料庫遷移時我諮詢了Oracle公司的技術人員,但發現他們的技術人員其實對發布方面的問題也不是非常精通,只是告知10g的動態庫串連將面向所有低版本,而且發布十分簡單。但具體到詳細配置也是不知所云。好了廢話不再多說,下面就是詳細的發布方法。
一、 需要發布時打包的檔案:
1、dll檔案;
(1)oci.dll  
(2)oraociei10.dll
以上兩個dll檔案擷取方法是安裝完oracle用戶端instantclient後在安裝目錄下直接擷取,其中oraociei10非常大約88M,沒辦法就是這麼大。(這個檔案應該在資料庫伺服器的oracle安裝目錄下也能找到,不知道是不是bin目錄,自己搜一下。)
(3)libjcc.dll
(4)pbdwe90.dll
(5)Pbo9090.dll
(6)pbvm90.dll
(7)msvcr71.dll(win2000作業系統需要此dll,winxp版本不需要。擷取辦法請到winxp作業系統的system32目錄下尋找)
以上幾個dll是PB發布的時所需的最少dll,可根據項目需要自己增加dll,其中數字9是pb的版本,可根據自己的開發版本自行調整。其中需要注意的是msvcr71.dll這個檔案,win2000作業系統發布需要這個檔案,winxp則不需要。但建議一併打上。這樣就不用區分版本。
2、其它相關檔案
(1)tnsnames.ora
該檔案記錄了用戶端串連資料庫伺服器的地址和資料庫名;
說明:以上所有檔案在發布時可拷貝到安裝目錄下,當然你可以拷貝到作業系統的目錄下。有的朋友可能比較困惑如何修改tnsnames.ora檔案中伺服器的地址和資料庫名,因為這個檔案不支援ini讀寫格式。這個你自己要想辦法了,我是在pb指令碼中利用filewrite函數將所有字串硬寫進去的。
3、註冊表
(1) 增設[HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE]目錄;
(2) 在該目錄下建立一個字串值:
NLS_LANG=SIMPLIFIED   CHINESE_CHINA.ZHS16GBK
這個是為了顯示簡體中文的設定。如果不設定中文將會顯示亂碼;
如果需要顯示繁體則:
NLS_LANG=TRADITIONAL   CHINESE_TAIWAN.ZHT16MSWIN950
說明:其實註冊表不做任何設定已經能串連上資料庫了,註冊表的設定就是語言設定。
3、運行測試
按照上面的配置方法在win2000專業版和winxp專業版進行了測試均通過。就10g而言,比以前版本的發布少了很多dll,可能這也是為什麼oraociei10.dll檔案如此之大的原因,也許oracle把以前的所有相關dll都融合到這個檔案裡了。這裡只是做了簡單的測試,不知道會不會有新的問題,歡迎大家做進一步的測試看看是否會遺漏一些dll造成某些功能可能會出現問題。

補充:下面是pb直連10g的串連代碼
  SQLCA.DBMS   =   "O90   Oracle9i   (9.0.1) "//這個dbms用的是9版本的但10也可用所以沒換。
  SQLCA.LogPass   =   '****** '
  SQLCA.ServerName   =   "yoursername "//這個是tnsnames.ora檔案中的連接字串名
  wf_oracleini(ls_ServerName,ls_dbname)//這個函數是設定oracle的tnsnames.ora中的伺服器IP地址和資料庫名,大家自己寫吧
  SQLCA.LogId   =   'youruname '
  SQLCA.AutoCommit   =   False//oracle好像預設必須是明確交易處理,這個參數設不設無所謂。
  SQLCA.DBParm   =   ' '

connect     using   sqlca;//或你自己的資料庫連接對象名

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.