我試圖使用下面的代碼將.txt文件輸入到postgres數據庫中。使用PHP/PDO將.txt文件複製到Postgres中
這個SQL當我在使用pgAdminIII數據庫直接進入,但在PHP代碼中,我得到一個語法錯誤的查詢工作:
PHP Parse error: syntax error, unexpected T_STRING in D:\Apapub\public_html\databases\B13\upload_files.php on line 34
當我從周圍像文本文件(「」)刪除所以:
$sql = 'COPY "public"."tblSedimentGrabEvent" FROM D:/Apapub/public_html/databases/B13/temp/grabevents.txt CSV';
我從SQL端得到一個錯誤。 任何幫助將不勝感激,顯然我是編程界的新手。
感謝
<?php
try {
$db = new PDO("pgsql:dbname=NAME;host=HOST","USER","PASS");
}
catch(PDOException $e) { echo $e->getMessage();
}
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br>";
}
else
{
echo "Uploaded Successfully!<br>";
echo "File Name: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"]/1024) . " kB<br>";
echo "Temp file: " . $_FILES["file"]["tmp_name"]. "<br>";
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"D:/Apapub/public_html/databases/B13/temp/" . $_FILES["file"]["name"]);
echo "Stored in: " . "D:\Apapub\public_html\databases\B13\temp" . $_FILES["file"]["name"]. "<br>";
}
}
$sql = 'COPY "public"."tblSedimentGrabEvent" FROM 'D:/Apapub/public_html/databases/B13/temp/grabevents.txt' CSV';
$resultC = $db->query($sql);
if (!$resultC){
echo ('The query did not succeed<BR>');
echo ($sql);
}
?>
什麼是SQL的錯誤? – andrewsi 2013-05-10 20:08:49
錯誤:在「D」處或附近的語法錯誤 第3行:COPY「tblSedimentGrabEvent」從D:/ Apapub/public_html/datab ... ^ – ASan 2013-05-10 20:10:37