我在R中使用PostgresSQL 10和RPostgreSQL包。
我创建了一个新表:
CREATE TABLE people (
id integer NOT NULL,
name character varying,
birthdate date,
deathdate date
);
然后尝试复制文件:
COPY people (id, name, birthdate, deathdate)
FROM '\people.sql'
ENCODING 'UTF-8';
然后出现以下错误:
Error in postgresqlExecStatement(conn, statement, ...) : RS-DBI
driver: (could not Retrieve the result : ERROR: invalid input syntax
for integer: "1" CONTEXT: COPY people, line 1, column id: "1"
我确实想知道这是否是编码错误,所以跑了并得到了:
readr::guess_encoding("\people.sql")
# A tibble: 4 x 2
encoding confidence
<chr> <dbl>
1 UTF-8 1.00
2 windows-1252 0.37
3 windows-1254 0.37
4 windows-1250 0.28
我已经尝试过其他不太可能的Windows编码,但是这也不起作用并且引发与第1行类似的问题,例如windows-1252显示错误:整数的输入语法无效:“ 1"
该文件的前几行是:
1 50 Cent 1975-07-06 \N
2 A. Michael Baldwin 1963-04-04 \N
和最后两行:
8396 Zubaida Sahar \N \N
8397 Zuhair Haddad \N \N
\.
知道可能导致这种情况的原因吗?
谢谢
答案 0 :(得分:0)