Postgresql 批量导入导出表数据

postgresql没有自带的批量导入导出成CSV的指令,但是有一个调用执行文件的指令(\i),这个指令可以执行编写的脚本。例如
一个a.txt文件,里面内容是

#将xxx表数据导出xxx文件
\copy xxx to xxx

需要在客户端的指令界面执行以下指令

\i 路径\a.txt

就可以进行批量导出操作。

postgresql copy命令介绍

注意COPY只能用于表,不能用于视图

copy命令可以操作的文件类型有:txt、sql、csv、压缩文件、二进制格式

1、copy命令导入数据示例:tb2是表名,delimiter ‘,’ 表示按逗号分隔字段数据

postgresql=# copy tb2 from '/mnt/postgresql/weibo.1000'delimiter ',';
COPY1000
postgresql=# select count(*)from tb2;

2、copy命令导入导出数据为sql格式

postgresql=# COPY tb2 TO '/mnt/postgresql/weibo.sql';
COPY1000
postgresql=#  COPY tb2 from '/mnt/postgresql/weibo.sql';
COPY2000

导出表 employee 到 sql 文件:

psql> COPY employee TO '/home/smallfish/employee.sql';

从文件导入数据:

psql> COPY employeenew FROM '/home/smallfish/employee.sql';

导入文件数据,指定间隔符为 | :

psql> COPY employeenew FROM '/home/smallfish/employee.sql' DELIMITER |;

导出数据库及具体表

1.导出数据库:方式一:pg_dump -U postgres -f c:\db.sqlpostgis

方式二:pg_dump -Upostgres postgis > c:\db.sql

2.导入数据库:方式一:psql -d postgis -f c:\db.sql postgres

3.导出具体表:方式一:pg_dump -Upostgres -t mytable -f dump.sql postgres

4.导入具体表:方式一:psql -d postgis -f c:\ dump.sqlpostgres

参数:

postgres:用户

postgis:数据库名称

mytable:表名称

-f, --file=文件名:输出文件名

-U, --username=名字:以指定的数据库用户联接

数据库导入导出

导入数据过程:

/*1.删除索引*/
drop index UQ_IDX_UNI_ENTERPRISE_001;

/*2.清空表数据,注意该步骤,只有测试在重复部署环境时才执行,生产环境只初始化一次,不需要执行 */
truncate tb_uni_enterprise;

/*3.导入数据*/
COPY tb_uni_enterprise(appid, eid, ename, status, creator, createtime,modifier, modifytime, memo) FROM '/tmp/init/enterprise.sql' DELIMITER '|';

/*4.创建索引*/
create unique index UQ_IDX_UNI_ENTERPRISE_001 on TB_UNI_ENTERPRISE (
appid,
eid
);

参考链接 :
https://blog.csdn.net/sinat_33775006/article/details/101181769
postgresql 数据导入导出https://blog.csdn.net/sanjiaoqq/article/details/84441053
更多介绍 :postgresql copy命令介绍 https://www.cnblogs.com/xiaodf/p/5027196.html

PostgreSQL COPY 导入/导出数据 : http://ju.outofmemory.cn/entry/35794
https://yq.aliyun.com/articles/74420

https://www.cnblogs.com/junge8618/p/5513966.html
POSTGRESQL 数据库导入导出 :https://blog.csdn.net/qq_23077579/article/details/81780669
postgresql 数据导入导出 :https://blog.csdn.net/sanjiaoqq/article/details/84441053

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寰宇001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值