構想很簡單,用Ubuntu架Samba Server,架設完成之後
再寫Shell Script,讓Linux環境下的資料備份到Ubuntu上
(基本上,我已經用SCP指命完成相關的備份動作)
但是,Ubuntu的安全機置是設計非Root證入
Read more
tiptop
在Linux下使用php連線oracle database
之前看網路上的資料,使用php連線oracle都不成功,今天剛好有空,就來測一下吧!
網路上的資料,大多都是教大家怎麼在Windows下使用appserver來連線oracle database,也有人介紹ODBC的方式來抓資料,但是ODBC是微軟的產品,並不是所不尚平台上都有這個元件可以呼叫,而且也為了系統穩定度,linux下開發php一直是小弟我的工作需要。之前看了某一篇文章,介紹linux下使用php連線oracle db,但是測試失敗,由於沒有急迫性,所以也就沒有繼續測下去,現在,急迫性出現,剛好今天晚上也有空,那就來測試一下吧!
測試的環境如下
一、CentOS 5.3
二、內建的php
三、內建的OCI連接元件
也就是說,灌好CentOS Linux就可以直接連Oracle了,之前網路上的給的概念都有一些些問題。
其實,今天測起來還蠻順的,在linux下使用php連接oracle db的動作如下
1.檢查php.ini 看看extension有沒有 oci8.so
2.使用OCI指令來寫個測試的PHP
<?php
oci_connect();
?>
這個只是測試oci元件是不是正常運作
當然,會出現錯誤訊息,因為沒有給足夠多的參數,正常畫面如下
3.寫個oracle DB連線的php吧
$con=oci_connect(‘user’,’password’,’db’) or die (‘Fail to connect Oracle DB’);
對oracle 來說,資料庫稱為user,因為它是先規劃table space(SID),再在table space上建立user,再在user中建資料表。
不過,第三個參數講成db名稱是怪怪的,我是使用SID才連線成功的,因為兩台linux是不同一台。
php原廠文件說 db是選擇性的,請參考這裡,內容可能是orcale 的instance或是tnsnames,如果沒有指定,PHP使用的環境變量ORACLE_SID和TWO_TASK確定的名稱,當地的Oracle實例和tnsnames.ora中相應的位置。
另外還可以指定字集,以及連線的模式,連線的模式可以是OCI_OPERATOR/OCI_SYSDBA,假設要指定連線模式,還需要使用oci8.privileged_connect來設定。
$req=oci_parse($con,’sql statement’) or die (‘Fail to get data’);
oci_execute($req);
接下來就是取出資料了!可以用do while來把資料拿出來
當然也可以用for loop來做,就看各位看官的習慣囉!
while ($row=oci_fetch_assoc($req)){
foreach ($row as $item){
echo $item. “\n”;
}
}
oci_fetch_assoc應該是計算有多少筆資料的涵式
測試結果,成功使用php連接鼎新tiptop GP5,tiptop GP5是使用linux版的oracle 11G,我看日後有一些報表的開發,真的可以自己來囉!另一套使用oracle的系統也是11g,不過是在windows server 2003 R2上,所以還要再找時間去測看看!
php5連接Oracle資料庫
因為工作的需要~需要透過php去連接Oracle資料庫
php除了連接mysql之外~也要連接Oracle資料庫
因為~公司主要的資料庫都是Oracle10g
1.鼎新tiptop GP5
2.MES
所以想利用php去oracle裡抓資料出來用~
我的php環境是Base on php5之上~
使用的OS~是Centos 5.0版
記憶體512MB ASUS 1U Server
Oracle原廠網站上提供了兩隻rpm
分別是
oracle-instantclient-basic-10.2.0.4-1.i386.rpm
oracle-instantclient-devel-10.2.0.4-1.i386.rpm
但是這兩隻rpm的處理方式~
在官方文件中說的不清楚~
而且~如果要讓php在apache中被支援~
這整個動作變的很麻煩~
要重新編過apache(httpd)
所以最簡單的處理方式就是動態載入 Read more
EMEditor to Support 4GL
EMEditor to Support 4GL
因為這套軟體是免費的
而且應該會有外國的朋友看到
所以 就用英文標題囉!
去鼎新上課回來~
那個Studio除了拉畫面之外(4FD)
4GL的IDE環境還算可以~
但是也是沒有辦法comple
4GL=>42R
4FD=>42F
花了一天的時間
把所有鼎新Tiptop的4GL環境中的
1全域變數(Variable)
2涵式(Function)
3運算元(Operation)
4模組代碼(含標準及客制$TOP & $CUST)
5按鈕名稱(Action)
6註解方式(Remark,鼎新的程式都是用行註解沒有用到區塊註解)
通通整理了進來~
結果 出來還不算差
我還蠻滿意的
只是 缺點 很麻煩
要自己在nettrem中下指下去作上下傳的動作
也許我會用Samba掛網路磁碟
讓我的作業方便些