PHP調用三種數據庫的方法

發表于:2007-09-07來源:作者:點擊數: 標簽:
相信大家對 PHP 已經很熟悉了。PHP內置了幾乎對世界上所有的 數據庫 的支持,而不再需要重新擴充。所以有人說:不會用PHP調用數據庫,等于沒學PHP。下面是筆者根據本人的操作經驗和大俠們的意見而得出的總結,希望能給初學者提供一些益處。 Oracle(甲骨文)
相信大家對PHP已經很熟悉了。PHP內置了幾乎對世界上所有的數據庫的支持,而不再需要重新擴充。所以有人說:不會用PHP調用數據庫,等于沒學PHP。下面是筆者根據本人的操作經驗和大俠們的意見而得出的總結,希望能給初學者提供一些益處。


Oracle(甲骨文)是世界上最為流行的關系數據庫。它是大公司推崇的工業化的強有力的引擎。我們先看看其相關的函數:

(1)integer ora_logon(string user , string password)

開始對一個Oracle數據庫服務器的連接。

(2)integer ora_open(integer connection)

打開給出的連接的游標。

(3)integer ora_do(integer connection, string query)

在給出的連接上執行查詢。PHP生成一個指示器,解析查詢,并執行之。

(4)integer ora_parse(integer cursor, string query)

解析一個查詢并準備好執行。

(5)boolean ora_exec(integer cursor)

執行一個先前由ora_parse函數解析過的查詢。

(6)boolean ora_fetch(integer cursor)

此函數會使得一個執行過的查詢中的行被取到指示器中。這使得您可以調用ora_getcolumn函數。

(7)string ora_getcolumn(integer cursor, integer column)

返回當前的值。列由零開始的數字索引。

(8)boolean ora_logoff(integer connection)

斷開對數據庫服務器的鏈接。

以下是向ORACLE數據庫插入數據的示例程序:

〈html〉

〈head〉〈title〉向ORACLE數據庫中插入數據〈/title〉〈/head〉

〈body〉

〈form action="〈?echo $PHP_SELF;?〉" method="post"〉

〈table border="1" cellspacing="0" cellpadding="0"〉

〈tr〉

〈th〉ID〈/th〉

〈th〉name〈/th〉

〈th〉Description〈/th〉

〈/tr〉

〈tr〉

〈td〉〈input type="text" name="name" maxlength="50" size="10"〉〈/td〉

〈td〉〈input type="text" name="email" maxlength="255" size="30"〉〈/td〉

〈td〉〈input type="text" name="Description" maxlength="255" size="50"〉〈/td〉

〈/tr〉

〈tr align="center"〉

〈td colspan="3"〉〈input type="submit" value="提交"〉 〈input type="reset" value="重寫"〉〈/td〉

〈/tr〉

〈/table〉

〈/form〉

〈?

//先設置兩個環境變量ORACLE_HOME,ORACLE_SID

putenv("ORACLE_HOME=/oracle/app/oracle/product/8.0.4");

putenv("ORACLE_SID=ora8");

//設置網頁顯示中文

putenv("NLS_LANG=Simplified_Chinese.zhs16cgb231280");

if($connection=ora_logon("scott","tiger")) {

//庫表test有ID,name,Description三項

$sql = 'insert into test(ID,name,Description) values ';

$sql .= '('' . $ID . '','' . $name . '',''. $Description . '')';

if($cursor=ora_do($connect,$sql)) {

print("insert finished!");

}

$query = 'select * from test';

if($cursor=ora_do($connect,$query)) {

ora_fetch($cursor);

$content0=ora_getcolumn($cursor,0);

$content1=ora_getcolumn($cursor,1);

$content2=ora_getcolumn($cursor,2);

print("$content0");

print("$content1");

print("$content2");

ora_close($cursor);

}

ora_logoff($connection);

}

?〉

〈/body〉

〈/html

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97