안녕하세요, SQL 공부중인 학생입니다..
DB에 적재되어있는 테이블을 CSV로 추출하려고 하는과정에서
ERROR: relative path not allowed for COPY to file 이라는 오류문구가 나옵니다.
경로가 잘못된 것 같은데 어떤 경로로 지정해줘야하는건가요
리눅스서버라면 에서 아래처럼 경로를 주시면 됩니다. 윈도우도 비슷하지 않을까 싶네요.
Copy (SELECT * FROM TTT) to '/tmp/test.csv' With CSV DELIMITER ',';
혹시 이 방법이나 pgAdmin 에서 직접 export하는방법 말고 다른 방법이 있을까요?
서버가 아닌 pc에 csv파일로 내려받으시려면 dbeaver나 다른 DB툴을 쓰시면 될듯합니다. pgadmin은 써봤는데 제가 써본건 버전이 낮아서 그런지 csv 형식으로 받는 옵션은 안보이더군요.
'relative path'
라는 단어가 우리말로는 '상대 경로'로 번역하고요.
이렇게 변역해도 컴퓨터 파일 디렉터리와 파일에 대한 개념을 정확하게 알고 있지 않으면 무슨 말인지도 모릅니다.
리눅스 계열에서는 '/' 문자로 시작하면 이것을 절대경로라고 합니다.
윈도우즈 계열에서는 '\' 문자로 시작하는 것이죠.
이 외 문자로 시작하는 것을 상대 경로라고 합니다.
copy 명령 결과를 파일로 저장할 때 반드시 상대경로가 아닌 절대 경로를 사용하라는 오류 메시지입니다.
OS 공부도 틈틈히 하세요.