Him*_*har 3 php postgresql file-io postgresql-copy
我试图使用"\ copy"命令从php导入txt/csv文件到我的postgres数据库.我不能使用COPY而不是\ copy,因为我需要它作为psql客户端执行.我的代码是:
$query = '\\'.'copy data1 FROM "data1.txt" WITH CSV HEADER DELIMITER AS "," QUOTE AS "^"';
$result = pg_query($conn,$query);
if (!$result) {
echo "cannot copy data\n";
} else {
echo "SUCCESS!";
}
Run Code Online (Sandbox Code Playgroud)
当我运行这个PHP文件时,我收到此错误:
PHP Warning: pg_query(): Query failed: ERROR: syntax error at or near "\"
LINE 1: \copy data1 FROM "data1.txt" WITH ...
^ in script.php on line 30
Run Code Online (Sandbox Code Playgroud)
其实,你不能运行\copy通过pg_query().它不是SQL命令.它是psql客户端的元命令.
你可以在那里执行:
\copy data1 FROM 'data1.txt' WITH CSV HEADER DELIMITER AS ',' QUOTE AS '^'
Run Code Online (Sandbox Code Playgroud)
或者运行shell命令:
psql mydb -c "\copy data1 FROM 'data1.txt'
WITH CSV HEADER DELIMITER AS ',' QUOTE AS '^'"
Run Code Online (Sandbox Code Playgroud)
注意引号.值必须在PostgreSQL中单引号:'value'.
双引号用于标识符 - 仅对具有大写或非法字符的标识符或保留字实际需要:"My table".
| 归档时间: |
|
| 查看次数: |
3310 次 |
| 最近记录: |