如何将混合或完全大写的表名从一个postgres数据库复制到另一个?

时间:2014-09-22 19:00:07

标签: postgresql

我在使用一个完全大写的名称表从一个postgres数据库复制到另一个postgres数据库时遇到了一些困难。

根据此处和其他地方的帖子,我一直在命令行使用以下语法:

pg_dump -t tablename fromdb | psql todb

数据库名称也都是大写字母,但这并未证明是一个问题。

以下是我需要或多或少运行的行:

pg_dump -t "COMMS" "DB_V1" | psql "DB_V2"

在双引号中传输名称全部小写的表(作为测试用例)时,它可以完美地工作,并且数据库名称是全部大写和双引号没有问题。但是,当尝试传输全部大写的表名时,它找不到它。 “pg_dump:找不到匹配的表格”

基于其他地方的阅读,我尝试使用''COMMS'',以及不同的排列只是为了看看它们是否有效。根据这一读数,我真的希望单引号内的双引号有效。

我的研究中缺少一个既定的做法吗?我意识到那里可能有一个非常简单的答案。提前谢谢!

1 个答案:

答案 0 :(得分:1)

在双引号之前添加反斜杠适用于windows cmd shell

pg_dump -t \"TableName\" MYDB