PostgreSQL在描述或导入数据的任何操作时出错

时间:2014-02-20 06:47:37

标签: sql postgresql-8.4

我已经将一个SQL转储导入名为Test的数据库中,现在当我尝试描述该表时,由于关系没有退出,它会给我一个错误。但是当我在information_schema.columns上执行相同的操作时,我得到了结果。修改或选择操作也会因同样的错误而失败。

# \connect Test
Password for user postgres:

psql (8.4.18)
You are now connected to database "Test".

Test=# \d
                          List of relations
         Schema |         Name          |   Type   |  Owner
        --------+-----------------------+----------+----------
        . . .
        public | TESTEMP               | table    | postgres
        . . .

        Test-# \d+ TestEmp;
        Did not find any relation named "Test".

    Test=# select column_name from INFORMATION_SCHEMA.COLUMNS where table_name = 'TestEmp';
        column_name
    --------------------
     lastname
     firstname

    Test=# alter table TestEmp Add column "PerEmp"  BOOLEAN DEFAULT FALSE;
    ERROR:  relation "testemp" does not exist

Test=# select * from TestEmp;
ERROR:  relation "testemp" does not exist
LINE 1: select * from testemp;
                      ^
MediaService=#

有关为何报告这些错误的任何想法。

1 个答案:

答案 0 :(得分:0)

解决。似乎表是使用带引号的字符串创建的,因为它会区分大小写。所以我在下面做了一个没有任何错误的表格。

#\d+ "TESTEMP"
                    Table "public.TESTEMP"
       Column       |            Type             | Modifiers
--------------------+-----------------------------+-----------
. . .

将此问题留待将来使用。