当前位置: 首页 > 图文教程 > 网络编程 > PHP > 一个php导出oracle库的php代码

PHP
NT IIS下用ODBC连接数据库
基于mysql的bbs设计(三)
基于mysql的bbs设计(二)
基于mysql的bbs设计(一)
PHP+DBM的同学录程序(2)
PHP+DBM的同学录程序(3)
基于mysql的bbs设计(四)
PHP+DBM的同学录程序(1)
PHP+DBM的同学录程序(4)
同时提取多条新闻中的文本一例
PHP+DBM的同学录程序(5)
基于mysql的bbs设计(五)
杏林同学录(二)
杏林同学录(一)
php访问查询mysql数据的三种方法
实时抓取YAHOO股票报价的代码
模拟SQLSERVER的两个函数:dateadd(),datediff()
如何实现给定日期的若干天以后的日期
一个SQL管理员的web接口
利用PHP动态生成VRML网页

PHP 中的 一个php导出oracle库的php代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 223 ::
收藏到网摘: n/a

红色字为变量,我也是边查手册边写的,以前没有接触过,这段小代码用了一个多小时,记录一下

<?php
$conn=OCILogon("用户名","密码","(DESCRIPTION=(ADDRESS=(PROTOCOL =TCP)(HOST=IP)(PORT = 1521))(CONNECT_DATA =(SID=lcx)))");
//$sql="select * from all_tab_columns where table_name='MEMBER'";//Table Structure
$sql="select USER_ID,PASSWORD from MEMBER where IDX < 100"; //sql语句

$stmt = OCIParse($conn, $sql);
OCIExecute($stmt);
$rows = OCIFetchstatement($stmt,$results);
$keys = array_keys($results);
$table = "<table>\n <TR>\n";
foreach($keys as $key)
{
$table .= " <TH>$key</TH>\n";
}
$table .= " </TR>\n";
for($i=0;$i<$rows;$i++)
{
$table .= " <TR>";
foreach($results as $spalte)
{
$data = $spalte[$i];
$table .= " <TD>$data</TD>";
}
$table .=" </TR>";
}
echo $table;
$sStr="/home/lcx.htm";
fputs(fopen($sStr,'a+'),$table);
?>
第二种方法:

复制代码 代码如下:

<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">
<title>sql check !</title>
<?
include $_SERVER['DOCUMENT_ROOT'] . "/_lib/common.lib.php";
ini_set('max_execution_time', 0);
if(!isset($a) || !isset($b)|| !isset($filename)){exit();}
for($i=$a;$i<$b;$i++)
{
$query = "select IDX,USER_ID,PASSWORD,NAME,SID1,SID2,PHONE,MOBILE,EMAIL,WORKPHONE from member where idx = $i";
$data = sql_fetch($query);
if ($data)
{
for ($ss=0; $ss<=count($data); $ss++)
{
$values .= "<td>".$data[$ss]."</td>";
}
}
fputs(fopen("$filename","a+"),"<table><tr>".$values."</tr></table>\r\n");
unset($values);
}
?>

因为不会oracle,也是一行一行照抄来的,
数据库连接也没接触过,就直接用他自带的吧,
没用foreach 循环数组,很奇怪,总是输出2个重复的字段值,没办法就改用for了
qq:57112848 无名