PostgreSQL将表导出为CSV(服务器端、客户机端)完整版
生活随笔
收集整理的這篇文章主要介紹了
PostgreSQL将表导出为CSV(服务器端、客户机端)完整版
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
如下使用COPY命令可將表內(nèi)容導(dǎo)出到CSV文件。
COPY (select id as COL_ID, name as COL_NAME from my_tab order by id) to 'D:/server_exp_dir/file_name.csv' with csv header;需要注意的是,上面的文件路徑名必須是數(shù)據(jù)庫服務(wù)器上的路徑,且目錄D:/server_exp_dir必須已經(jīng)存在。相關(guān)問題及解決方法詳見另一篇《Postgres使用Copy命令將表導(dǎo)出成csv文件的遇到Permission Denied等錯(cuò)誤》
網(wǎng)上大部分解決方案都是將文件導(dǎo)出在服務(wù)器上,但是更多的情況下,我們需要直接在客戶機(jī)上拷貝文件。當(dāng)然導(dǎo)完以后再FTP也是一個(gè)方法,但其實(shí)只要將COPY命令稍加改進(jìn)就可以直接將文件聲稱在客戶機(jī)上啦。
psql --dbname=my_db_name --host=db_host_ip --username=my_username -c "COPY (select id as COL_ID, name as COL_NAME from my_tab order by id) TO STDOUT with csv header" > D:/client_exp_dir/file_name.csv上面的文件路徑應(yīng)該是客戶機(jī)上的路徑。注意修改的核心部分在COPY TO后面,COPY到標(biāo)準(zhǔn)輸出中,再重定向到本地文件就可以了。
psql -h 172.20.1.124 -p 5432 -U smartsys -d smartsys -o e:\test2.cvs -c “select * from obj_dev;”
總結(jié)
以上是生活随笔為你收集整理的PostgreSQL将表导出为CSV(服务器端、客户机端)完整版的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Postgres使用Copy命令将表导出
- 下一篇: 拉姆技术:如何选购旋转蒸发仪?