【发布时间】:2019-08-03 00:55:22
【问题描述】:
我想将数据库转储导入到不包含旧数据库所有列的新数据库。
所以,要忽略/删除这些列,我的想法是编辑 dump.sql。
如何在 ruby 中读取和编辑 sql 文件?
已创建转储:
pg_dump --data-only old_database > dump_data_12_3_2019.sql;
使用:
- PostgreSQL 9.5
- Ruby 2.5.1
内部sql文件:
COPY public.images (id, file, created_at, updated_at, rotation) FROM stdin;
255 31265d7843.JPG 2018-11-15 09:05:43.37898 2018-11-15 09:05:43.37898 0
256 78e834e4e7.JPG 2018-11-15 09:05:43.571389 2018-11-15 09:05:43.571389 0
257 7b6662659b.JPG 2018-11-15 09:05:44.275989 2018-11-15 09:05:44.275989 0
215 6fe307f4b5.jpg 2018-10-15 11:08:59.42583 2018-10-15 11:12:25.284024 0
标题以 COPY 开头,列名在 ( ) 内,数据在下方,以空格作为分隔符。
如何删除列旋转和他的数据?
【问题讨论】:
-
您可以只转储您需要的表格。见stackoverflow.com/questions/7359827/…
-
我不想转储特定的表。我想忽略或删除某些表中的列。
-
将那些“旧”列添加到新数据库中可能最简单,这样您就可以最轻松地导入转储;然后删除这些列。
-
@CodyCaughlan 是的,我知道这一点。谢谢
标签: ruby