我重构了一个项目,想尝试使用 PostgreSQL 而不是 MySQL。我现在想迁移一些表的表内容。
问题是,当我使用这样的选择查询时(不要关心名称,只是一个示例)
选择 id AS id_x,名称 AS name_x,name2 AS name2_x
我想导出表数据并导入到MySQL中。问题是,MySQL 和 PostgreSQL 中 INSERT INTO
的语法不同。我不想导出整个表,因为我还更改了结构的某些部分,试图使其性能更高等。所以我只想获取表数据,但我需要那些 AS x
的事情,因为列的名称已更改
我已经找到了有关此主题的多个链接。
我可以使用mysqldump
转储表并设置--complete=name
参数。这里的问题是,我无法添加 SELECT 语句,对吗?我只能添加 where
检查。
然后,我可以使用mysql
命令导出我想要的查询,但mysql没有任何兼容
参数。我该如何实现这一目标?
最佳答案
您可以考虑通过发出来创建临时表
SELECT id AS id_x, name AS name_x, name2 AS name2_x FROM oldtable INTO temptable
然后作为第二步,使用带有 --兼容=
参数的 mysqldump 导出临时表。
关于mysql - 将 MySQL 数据库内容迁移到 PostgreSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35865787/