나는 psql의 초보자이며 도움이 필요하다. 로컬 CSV를 원격 DB에로드하려면 어떻게해야합니까?
다음 명령을 사용하고 있습니다
\COPY test(user_id, product_id, value)
FROM '/Users/testuser/test.tsv' WITH DELIMITER '\t' CSV HEADER;
그러나 이것은 로컬 DB에서 파일을 수행 해야하는 동안 원격 DB에서 파일을 검색합니다.
그래서 방법이 없어? 파일을 원격 서버에 복사해야합니까?
—
user22149
copy와 \ copy에 차이가 있습니까? 죄송합니다, 저는 psql에서만 정말 새로운 것입니다 oracle 거기에서 아무 문제없이 이것을 할 수 있습니다
—
user22149
차이점은 하나는 서버에서 파일을 읽고 다른 하나는 클라이언트에서 파일을 읽는다는 것입니다. 서버에서 파일을 읽는 것이 더 빠를 것입니다.
—
a_horse_with_no_name
@ user22149 리터럴 탭 또는을 사용하십시오
—
Craig Ringer
E'\t'
. 그러나 delim을 지정하지 않으면 tab이 기본값이어야합니다.
\copy
로컬 파일을 읽습니다 (psql
명령이며 내부에서만 사용할 수 있음psql
).COPY
그러나 (없는``)는 서버에서 파일을 읽습니다.