PHPÁ¬½ÓOracle²¢·ÖÒ³·ÃÎÊ(OCI°æ)
ËäÈ»±¾ÈËûÓÐÑéÖ¤¹ý,²»¹ý¾Ý˵ͨ¹ýADODB·ÃÎÊOracle¶ÔÐÔÄÜÓ°ÏìºÜС.¶øÇÒADODB±ÈOCI8Ò²Òª·½±ãºÜ¶à,±Ï¾¹Ðí¶à¶«Î÷¶¼Ôٴηâ×°¹ý.²»¹ý²»¹ÜÔõô˵Õâ¶¼ÔÚÖмäÓÖ¼ÓÉÏÁËÒ»²ã,ÀíÂÛÉÏÀ´Ëµ³öÏÖÎÊÌâµÄ¼¸Âʺͽâ¾öÎÊÌâµÄÄѶȶ¼±ä´óÁË.¶øOracleÓÖ¾³£ÓÃÔÚ²»ÄÜËæ±ã³öÎÊÌâµÄ»·¾³,ËùÒÔÏë±ØÏëÒªÖ±½ÓʹÓÃOCIµÄÇé¿öÒ²²»ÉÙ.ÒÔϾÍÊÇÎÒµÄÀý×Ó:
<?php
$conn = oci_connect("username", "password", "url/service_name"); //µÚÈýÏîʹÓõÄÊÇOracle Easy Connect string.Ïê¼û http://download.oracle.com/docs/cd/E11882_01/network.112/e10836/naming.htm#NETAG255
$stmt = oci_parse($conn,
"SELECT * from (SELECT rownum r,ima_file.* from ima_file) s WHERE s.r >= 9000 AND s.r <= 9020");
oci_execute($stmt, OCI_DEFAULT); //OCI_DEFAULTÒâζ×ÅÈκαä¸ü¶¼ÐèÒªCommit»òRollback
$i = 0;
echo "<table border=1><caption>IMA_FILE</caption><thead><td>¼ÆÊý</td><td>ÐÐÊý</td><td>ÁϼþºÅ</td><td>Æ·Ãû</td><td>¹æ¸ñ</td></thead>";
while ($row = oci_fetch_array($stmt, OCI_BOTH)) {
//OCI_BOTH½«´´½¨¼È¿ÉÒÔʹÓÃÊý×ÖË÷Òý,ÓÖ¿ÉÒÔʹÓÃ×Ö¶ÎÃûÖ¸ÏòÏàͬÏîµÄÊý×é.
echo "<tr><td>" . ++$i . "</td><td>$row[0]</td><td>{$row[1]}</td><td>{$row[2]}</td><td>";
/* ±¾À¸Î»¿ÉÄÜ´æÔÚNULLÖµ
* ¸ù¾ÝOCI»úÖÆ,NULLÖµ½«²»Óè¶ÁÈ¡²¢Ö±½ÓÌø¹ý.Èç3µÄ
*ÖµÊÇNULL,ÔòÊý×éÖв»»áÓÐÕâÒ»Ïî,¶øÊÇÖ±½Ó´Ó2Ìøµ½4
*(µÚËÄÏîÖµ²»ÎªNULLʱ).ËùÒÔÔÚÕâÖÖÇé¿öϲ»¹ÜÊÇË÷Òý
*3»òÊÇ'IMA021'¶¼²»´æÔÚ.Ö±½ÓÒýÓûᱨ´í,ËùÒÔÐèÒªÏÈ
*ÐвâÊÔÔÙ½øÐÐÒýÓÃ.
*/
if (array_key_exists("IMA021", $row)) {
echo $row["IMA021"];
}
echo "</td></tr>";
}
echo "</table>";
oci_cancel($stmt); //²»ÊDZØÐë,ÔÚ´Ë×÷ΪÑÝʾ
oci_close($conn);
?>
Ïà¹ØÎĵµ£º
PHPÕ¾µãµÄÔÚÏ߽̳ÌÒѾºÜ°ôÁË¡£ÔÚÄÇÀﻹÓÐһЩÆäËû½Ì³ÌµÄÁ´½Ó¡£¶ø±¾Îĵĸò¿·Ö½«ÈÃÄã¶ÔPHPÊìϤһµã¡£ÎÒ²»¿ÉÄÜ×öµ½Ã»ÓÐÈκÎÒÅ©£¬ÎÒµÄÄ¿µÄÖ»ÔÚÓÚÄÜÈÃÄãѸËÙ¿ªÊ¼ÄãµÄPHP±à³Ì¡£
2.1 Ê×ÒªÌõ¼þ
ÄãÊ×ÏȱØÐëÒªÓÐÒ»¸öÕýÔÚ¹¤×÷×ŵÄÖ§³ÖPHPµÄweb·þÎñÆ÷¡£ÎÒ¼Ù¶¨ÔÚÄãµÄ·þÎñÆ÷ÉÏËùÓÐPHPÎļþµÄÀ©Õ¹ÃûΪ.php3¡£
2.2 PHPµÄ°²×°
Éú ......
PHPÊÇÒ»ÖÖÓÃÓÚ´´½¨¶¯Ì¬WEBÒ³ÃæµÄ·þÎñ¶Ë½Å±¾ÓïÑÔ¡£ÈçͬASPºÍColdFusion£¬Óû§¿ÉÒÔ»ìºÏʹÓÃPHPºÍHTML±àдWEBÒ³Ãæ£¬µ±·ÃÎÊÕßä¯ÀÀµ½¸ÃÒ³ÃæÊ±£¬·þÎñ¶Ë»áÊ×ÏȶÔÒ³ÃæÖеÄPHPÃüÁî½øÐд¦Àí£¬È»ºó°Ñ´¦ÀíºóµÄ½á¹ûÁ¬Í¬HTMLÄÚÈÝÒ»Æð´«Ë͵½·ÃÎʶ˵Ää¯ÀÀÆ÷¡£µ«ÊÇÓëASP»òColdFusion²»Í¬£¬PHPÊÇÒ»ÖÖÔ´´úÂ뿪·Å³ÌÐò£¬ÓµÓÐºÜºÃµÄ¿çÆ½Ì¨¼ ......
ÊÕ¼¯µÄ¼¸ÌõÔÚoracleÖÐͨ¹ýconnect by priorÀ´ÊµÏֵݹé²éѯ
Start with...Connect By×Ó¾äµÝ¹é²éѯһ°ãÓÃÓÚÒ»¸ö±íά»¤Ê÷ÐνṹµÄÓ¦Óá£
´´½¨Ê¾Àý±í£º
CREATE TABLE TBL_TEST
(
ID NUMBER,
NAME VARCHAR2(100 BYTE),
PID NUMBER ......