我在使用一个完全大写的名称表从一个postgres数据库复制到另一个postgres数据库时遇到了一些困难。
根据此处和其他地方的帖子,我一直在命令行使用以下语法:
pg_dump -t tablename fromdb | psql todb
数据库名称也都是大写字母,但这并未证明是一个问题。
以下是我需要或多或少运行的行:
pg_dump -t "COMMS" "DB_V1" | psql "DB_V2"
在双引号中传输名称全部小写的表(作为测试用例)时,它可以完美地工作,并且数据库名称是全部大写和双引号没有问题。但是,当尝试传输全部大写的表名时,它找不到它。 “pg_dump:找不到匹配的表格”
基于其他地方的阅读,我尝试使用''COMMS'',以及不同的排列只是为了看看它们是否有效。根据这一读数,我真的希望单引号内的双引号有效。
我的研究中缺少一个既定的做法吗?我意识到那里可能有一个非常简单的答案。提前谢谢!
答案 0 :(得分:1)
在双引号之前添加反斜杠适用于windows cmd shell
pg_dump -t \"TableName\" MYDB