kylix server developer版與oracle816連接方法
2024-08-29 13:34:56
供稿:網友
 
             
  come from magicfeather studio; 
首先,安裝Oracle816(自然要添加一個oracle.oracle用戶了)。 
建議使用jdk118,oracle816要求的是這個版本,我看到網上的一些文章都用jdk1 
30,可能不會出現什么問題,但不推薦。 
                                                                                            其次,以oracle用戶身份安裝kylix sd版(不要以其他用戶來做,像root用戶會 
出現找不到oracle驅動的情況,其它用戶不能連接oracle)。 
正確設置環境變量,修改/etc/bashrc. 
加入: 
eXPort LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/dir/to/kylix/bin 
現在應該已經可以連接oracle了。 
一個小例子: 
oracle_sid=haha; 
以system/manager@haha用戶測試; 
常見表a: 
svrmgrl 
connect system/manager@haha 
create table a (a int); 
insert into a values(1); 
insert into a values(2); 
用到控件: 
db exPRess: 
sql connection 
sdl dataset 
db access: 
datasource 
clientdataset 
datasetprovider 
db control: 
dbgrid 
dbnavigator 
standard: 
button(2個) 
過程: 
創建form1. 
添加上述控件。 
雙擊form1上的sql connection.會出現選擇數據庫驅動的列表框,選擇oracle驅 
動,正確設置database name,和user passWord;并可以測試連接。 
修改其屬性active為true,會要求你輸入用戶名與密碼連接數據庫。 
相應的將其他控件的屬性也修改為true. 
空間連接的順序: 
sqkconnection<---sqldataset<----dataprovider<----clientdataset<----datasource{ 
{<----dbnavigator 
{ <----dbdride 
將dqldataset的屬性修改為ctquery.select * from A; 
將所有控件屬性改為true之后,應該可以在dbgrid中看到表A的內容了; 
button1.caption為commit.雙擊這個控件,添加代碼: 
if clientDataSet1.Active then client.ApplyUpdates(-1); 
button2.caption為exit,添加代碼close; 
編譯并運行即可。 
可以通過dbnavigator添加,刪除數據。commit按鈕提交。 
另一種方法,可以下載kylix的odac控件包,支持oracle7,8i版本。 
使用方法差不多了:) 
注重問題: 
我是在redhat7.1上作的,oracle的installer在GB環境下有亂碼,有部分是中文 
。 
其中dbassist是中文的,其他的工具還是有問題,可能是jdk118的locale問題。 
也可能是我的平臺有點問題。假如你愿意,可以在安裝完成后,將jdk換成local 
e做得更好的jdk13. 
建議做法: 
安裝英文系統,安裝oracle,注重建庫時的nls_lang設定(支持中文的庫), 
然后再漢化系統,安裝kylix即可。 
假如你不建立中文庫,在輸入中文時,數據庫存儲為??. 
                         我用linuxoracle服務器,pb客戶端測試,不能進行正確的字符傳輸。 
其它中文平臺我沒有試過,不只oracle的安裝有沒有亂碼。有愛好自己是一下吧 
:) 
安裝一個oracle816企業版大概要1G空間。