我使用 PostgreSQL 9.3 创建了一些带引号的表,现在遇到一个奇怪的问题。例如,如果我使用引号创建一个表:
create table "TEST" ("Col1" bigint);
表格已经正确创建,当我在pgAdminIII的SQL面板中查看时,可以看到引号被保留。但是当我查询数据库以查找所有可用表格的列表(使用以下查询),我发现结果中不包含表格名称周围的引号。
select table_schema, table_name from information_schema.tables where not table_schema='pg_catalog' and not table_schema='information_schema';
由于这个表格是使用引号创建的,所以我不能直接使用上面查询返回的未引用的表格名称,否则会导致标题中报错。
我可以尝试在所有查询中将表格名称用引号括起来,但我不确定它是否总是有效。我正在寻找一种方法来获取结果中带引号的表格名称列表。
对于列名,我也遇到了同样的问题,但我希望如果我可以找到解决表格名称问题的方法,类似的解决方案也适用于列名。