PostgreSQL导入导出表格
2021/6/13 2:21:13
本文主要是介绍PostgreSQL导入导出表格,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
PostgreSQL导入导出表格测试
- 创建表
CREATE TABLE test_1(id int4,name text,create_time timestamp without time zone default clock_timestamp()); ALTER TABLE test_1 ADD PRIMARY KEY (id);
- 插入数据
INSERT INTO test_1(id,name) SELECT n,n || '_francs' FROM generate_series(1,5000000) n;
- 数据库命令
# 查看表属性 \d test_1 # 查看表大小 \dt+ test_1 # 查看指定索引大小 \di+ test_1_pkey # 查看函数代码 \sf ST_Overlaps(geometry, geometry) # 设置查询结果输出 \x # 显示SQL执行时间 \timing # 反复执行当前SQL 1为秒 \watch 1
- 查询
SELECT * FROM test_1 LIMIT 1;
COPY命令导入导出数据
COPY 命令是从数据库服务端主机读取或写入文件数据
- 表格导出为txt
COPY public.test_1 TO '/data/pg/scripts/test_1.txt';
- txt文件导入表格
COPY public.test_2 FROM '/data/pg/scripts/test_1.txt';
- 表格导出为csv
COPY public.test_1 TO '/data/pg/scripts/test_1.csv' WITH csv header;
- 到处一部分数据
COPY (SELECT * FROM test_1 WHERE id=1) TO '/data/pg/scripts/test_1_1.txt';
\copy元命令导入导出数据
\copy 元命令从psql 客户端住距读取或写入文件数据,并且\copy 不需要超级用户权限
数据表的所有者必须是登陆用户
mac客户端
# 进入postgres的bin目录cd /Library/PostgreSQL/13/bin# psql连接数据库./psql -h 192.168.1.41 -p 5432 gis gisuser#导出数据\copy test_1 to '/Users/sungang/Documents/data/scripts/test_1.txt';# 导入数据库\copy test_3 FROM '/Users/sungang/Documents/data/scripts/test_1.txt';
总结
从性能上看,大数据量导出到文件或大文件导入到数据库表中,COPY比\copy性能高。原因也很明确:COPY是在数据库本地执行,\copy从客户端导出
这篇关于PostgreSQL导入导出表格的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-01-05快速清空 PostgreSQL 数据库中的所有表格,让你的数据库重新焕然一新!
- 2024-01-04在PostgreSQL中创建角色:判断角色是否存在并创建
- 2023-05-16PostgreSQL一站式插件推荐 -- pg_enterprise_views
- 2022-11-22PostgreSQL 实时位置跟踪
- 2022-11-22如何将PostgreSQL插件移植到openGauss
- 2022-11-11PostgreSQL:修改数据库用户的密码
- 2022-11-06Windows 环境搭建 PostgreSQL 物理复制高可用架构数据库服务
- 2022-10-27Windows 环境搭建 PostgreSQL 逻辑复制高可用架构数据库服务
- 2022-10-11PostgreSql安装(Windows10版本)
- 2022-09-13PostgreSQL-Network Address类型操作和函数