PostgreSQL COPY 导入/导出数据
生活随笔
收集整理的這篇文章主要介紹了
PostgreSQL COPY 导入/导出数据
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
COPY 命令可以快速的導(dǎo)入數(shù)據(jù)到 PostgreSQL 中,文件格式類似CVS之類。適合批量導(dǎo)入數(shù)據(jù),比 \i 和恢復(fù)數(shù)據(jù)表快。
導(dǎo)出表數(shù)據(jù)到文件或 STDOUT :
COPY tablename [(column [, ...])]TO {'filename' | STDOUT}[[WITH][BINARY][OIDS][DELIMITER [AS] 'delimiter'][NULL [AS] 'null string'][CSV [HEADER][QUOTE [AS] 'quote'][ESCAPE [AS] 'escape'][FORCE NOT NULL column [, ...]]導(dǎo)入文件或者 STDIN 到表中:
COPY tablename [(column [, ...])]FROM {'filename' | STDIN}[[WITH][BINARY][OIDS][DELIMITER [AS] 'delimiter'][NULL [AS] 'null string'][CSV [HEADER][QUOTE [AS] 'quote'][ESCAPE [AS] 'escape'][FORCE QUOTE column [, ...]]導(dǎo)出表 employee 到默認(rèn)輸出 STDOUT:
psql> COPY employee TO STDOUT; 1 JG100011 Jason Gilmore jason@example.com 2 RT435234 Robert Treat rob@example.com 3 GS998909 Greg Sabino Mullane greg@example.com 4 MW777983 Matt Wade matt@example.com導(dǎo)出表 employee 到 sql 文件:
psql> COPY employee TO '/home/smallfish/employee.sql';從文件導(dǎo)入數(shù)據(jù):
psql> COPY employeenew FROM '/home/smallfish/employee.sql'; psql> SELECT * FROM employeenew; employeeid | employeecode | name | email ------------+--------------+---------------------+---------------1 | JG100011 | Jason Gilmore | jason@example.com2 | RT435234 | Robert Treat | rob@example.com3 | GS998909 | Greg Sabino Mullane | greg@example.com4 | MW777983 | Matt Wade | matt@example.com (4 rows)輸出對(duì)象ID(OIDS):
psql> COPY employee TO STDOUT OIDS; 24627 1 GM100011 Jason Gilmore jason@example.com 24628 2 RT435234 Robert Treat rob@example.com 24629 3 GS998909 Greg Sabino Mullane greg@example.com 24630 4 MW777983 Matt Wade matt@example.com指定導(dǎo)出間隔符,默認(rèn)是 \t ,這里為 | :
psql>COPY employee TO STDOUT DELIMITER '|'; 1|GM100011|Jason Gilmore|jason@example.com 2|RT435234|Robert Treat|rob@example.com 3|GS998909|Greg Sabino Mullane|greg@example.com 4|MW777983|Matt Wade|matt@example.com導(dǎo)入文件數(shù)據(jù),指定間隔符為 | :
psql> COPY employeenew FROM '/home/smallfish/employee.sql' DELIMITER |;導(dǎo)出指定字段的數(shù)據(jù):
psql> COPY employee (name,email) TO STDOUT; Jason Gilmore jason@example.com Robert Treat rob@example.com Greg Sabino Mullane greg@example.com Matt Wade matt@example.com為 NULL 字段設(shè)置默認(rèn)值:
psql> COPY employee TO STDOUT NULL 'no email'; Jason Gilmore no email Robert Treat rob@example.com Greg Sabino Mullane greg@example.com Matt Wade no email導(dǎo)出為CVS格式:
psql> COPY employee (name, email) TO '/home/smallfish/employee.csv' CSV HEADER;總結(jié)
以上是生活随笔為你收集整理的PostgreSQL COPY 导入/导出数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: unix下批量进程的创建和强杀命令
- 下一篇: 【Boost】boost库中functi