<input type="file" name="exngcsv" >
<input type="submit" value="导入数据" name="exngsend" >
if($exngcsv!="none" && $exngcsv!=""){ $fhandle=fopen($exngcsv,"r"); while($data=fgetcsv($fhandle,1000,",")) {
$ocno=trim($data[0]);
$ccy=trim($data[1]); $sql="insert into tmp_fx values ('$ocno','$ccy')";
//echo "$sql;<br>";
ora_parse($cursor, $sql) or die;
ora_exec($cursor);
}
fclose($fhandle);
}
以上代码能够实现csv文件中的数据插入oracle数据库
----------------------------------------
if (isset($_POST['exngsend'])){ $file = $_FILES['exngcsv']; $file_type = substr(strstr($file['name'],'.'),1);
//echo '<pre>';print_r($_SERVER);
// 检查文件格式
if ($file_type != 'csv'){
echo '文件格式不对,请重新上传!';
exit;
}
$handle = fopen($file['tmp_name'],"r"); $row = 0;
while ($data = fgetcsv($handle,1000,',')){
//echo "<font color=red>$row</font>"; //可以知道总共有多少行
$row++;
$num = count($data);
// 这里会依次输出每行当中每个单元格的数据
for ($i=0; $i<$num; $i++){
echo $data[$i]."<br>";
// 在这里对数据进行处理
}
} fclose($handle);
}
这段代码可以读出csv文件中的数据,但是加上下面这段数据库操作语言后,SQl语句都对,但就是不能插入数据卡,不知道什么原因
$ocno=trim($data[0]);
$ccy=trim($data[1]); $sql="insert into tmp_fx values ('$ocno','$ccy')";
//echo "$sql;<br>";
ora_parse($cursor, $sql) or die;
ora_exec($cursor);
<input type="submit" value="导入数据" name="exngsend" >
if($exngcsv!="none" && $exngcsv!=""){ $fhandle=fopen($exngcsv,"r"); while($data=fgetcsv($fhandle,1000,",")) {
$ocno=trim($data[0]);
$ccy=trim($data[1]); $sql="insert into tmp_fx values ('$ocno','$ccy')";
//echo "$sql;<br>";
ora_parse($cursor, $sql) or die;
ora_exec($cursor);
}
fclose($fhandle);
}
以上代码能够实现csv文件中的数据插入oracle数据库
----------------------------------------
if (isset($_POST['exngsend'])){ $file = $_FILES['exngcsv']; $file_type = substr(strstr($file['name'],'.'),1);
//echo '<pre>';print_r($_SERVER);
// 检查文件格式
if ($file_type != 'csv'){
echo '文件格式不对,请重新上传!';
exit;
}
$handle = fopen($file['tmp_name'],"r"); $row = 0;
while ($data = fgetcsv($handle,1000,',')){
//echo "<font color=red>$row</font>"; //可以知道总共有多少行
$row++;
$num = count($data);
// 这里会依次输出每行当中每个单元格的数据
for ($i=0; $i<$num; $i++){
echo $data[$i]."<br>";
// 在这里对数据进行处理
}
} fclose($handle);
}
这段代码可以读出csv文件中的数据,但是加上下面这段数据库操作语言后,SQl语句都对,但就是不能插入数据卡,不知道什么原因
$ocno=trim($data[0]);
$ccy=trim($data[1]); $sql="insert into tmp_fx values ('$ocno','$ccy')";
//echo "$sql;<br>";
ora_parse($cursor, $sql) or die;
ora_exec($cursor);
不过,想多学点东西,如果有“’”的话,怎么操作,请指教
找问题也得有个步骤啊
。
这段代码可以读出csv文件中的数据,但是加上下面这段数据库操作语言后,SQl语句都对,但就是不能插入数据卡,不知道什么原因
$ocno=trim($data[0]);
$ccy=trim($data[1]); $sql="insert into tmp_fx values ('$ocno','$ccy')";
//echo "$sql;<br>";
ora_parse($cursor, $sql) or die;
ora_exec($cursor);
改为
ora_parse($cursor, $sql);
或
ora_parse($cursor, $sql) or die(ora_error());
试了一下,居然报错是ORA-00000: normal, successful completion
很简单的是insert语句啊,无解
//echo "$sql;<br>";
ora_parse($cursor, $sql) or die;
ora_exec($cursor);
那个 or die 就不应该要了,die 就是中断程序的执行。后面的 ora_exec($cursor); 也就不会执行了oracle 函数与其他数据库函数还是有很大区别的!
150155409 4001000
150207404 4001000
150160310 4001000
150238820 4001000
150226741 4001000
这个就是数据
//echo "$sql;<br>";
我用echo打出sql语句,放在toad里面都能执行成功,无解了