首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将PostgreSQL表中的特定行导出为插入SQL脚本

将PostgreSQL表中的特定行导出为插入SQL脚本
EN

Stack Overflow用户
提问于 2012-10-10 16:51:39
回答 8查看 235.6K关注 0票数 236

我有一个名为nyummy的数据库模式和一个名为cimory的表

代码语言:javascript
复制
create table nyummy.cimory (
  id numeric(10,0) not null,
  name character varying(60) not null,
  city character varying(50) not null,
  CONSTRAINT cimory_pkey PRIMARY KEY (id)
);

我想将cimory表的数据导出为insert SQL脚本文件。但是,我只想导出城市等于'tokyo‘的记录/数据(假设城市数据都是小写的)。

该怎么做呢?

无论解决方案是在免费软件GUI工具中还是在命令行中(尽管GUI工具解决方案更好)。我试过pgAdmin III,但我找不到一个这样做的选择。

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2012-10-10 17:32:00

使用要导出的集合创建一个表格,然后使用命令行实用程序pg_dump将其导出到文件:

代码语言:javascript
复制
create table export_table as 
select id, name, city
from nyummy.cimory
where city = 'tokyo'
代码语言:javascript
复制
$ pg_dump --table=export_table --data-only --column-inserts my_database > data.sql

--column-inserts将转储为带有列名的insert命令。

--data-only不转储架构。

如下所述,在中创建视图而不是表将在需要新导出时避免创建表。

票数 346
EN

Stack Overflow用户

发布于 2015-08-25 23:38:41

对于我的用例,我能够简单地通过管道连接到grep。

代码语言:javascript
复制
pg_dump -U user_name --data-only --column-inserts -t nyummy.cimory | grep "tokyo" > tokyo.sql
票数 10
EN

Stack Overflow用户

发布于 2013-11-27 20:58:12

SQL Workbench就有这样一个特性。

运行查询后,右键单击查询结果并选择"Copy Data As SQL > SQL Insert“

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12815496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档