ฉันเป็นสามเณรใน psql และต้องการความช่วยเหลือ ฉันจะโหลด CSV ท้องถิ่นไปยังฐานข้อมูลระยะไกลได้อย่างไร
ฉันใช้คำสั่งต่อไปนี้
\COPY test(user_id, product_id, value)
FROM '/Users/testuser/test.tsv' WITH DELIMITER '\t' CSV HEADER;
แต่สิ่งนี้จะค้นหาไฟล์บนฐานข้อมูลระยะไกลในขณะที่ฉันต้องทำบนพีซีในพื้นที่ของฉัน
ดังนั้นจึงไม่มีวิธีนี้ ฉันต้องการคัดลอกไฟล์ไปยังเซิร์ฟเวอร์ระยะไกลหรือไม่?
—
22149
มีความแตกต่างในการคัดลอกและ \ คัดลอก? ขอโทษฉันใหม่จริง ๆ ใน psql รู้ oracle ที่นั่นฉันสามารถทำสิ่งนี้ได้โดยไม่มีปัญหาใด ๆ
—
user22149
ความแตกต่างก็คือไฟล์หนึ่งอ่านไฟล์บนเซิร์ฟเวอร์และอีกอันอ่านไฟล์บนไคลเอนต์ เห็นได้ชัดว่าการอ่านไฟล์บนเซิร์ฟเวอร์จะเร็วขึ้น
—
a_horse_with_no_name
@ user22149
—
Craig Ringer
E'\t'
ใช้ตัวอักษรหรือแท็บ แต่แท็บควรเป็นค่าเริ่มต้นหากคุณไม่ได้ระบุ delim อยู่ดี
\copy
อ่านไฟล์โลคัล (เป็นpsql
คำสั่งและสามารถใช้ได้จากภายในpsql
เท่านั้น)COPY
อย่างไรก็ตาม (หมายเหตุ `` `` หายไป) จะอ่านไฟล์บนเซิร์ฟเวอร์