微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

一个非常奇怪的PostgreSQL SQL

我们的Postgresql SERVER版本8.4中有一个奇怪的sql.它看起来像是PG服务器执行的系统sql!我不知道这个sql?谁知道这个?

–Strange sql

SELECT NULL AS TABLE_CAT,n.nspname AS TABLE_SCHEM,c.relname AS TABLE_NAME,CASE n.nspname ~ '^pg_' OR n.nspname = '@R_408_4045@ion_schema'  
          WHEN true THEN 
            CASE 
               WHEN n.nspname = 'pg_catalog' OR n.nspname = '@R_408_4045@ion_schema' THEN 
                 CASE c.relkind   
                   WHEN 'r' THEN 'SYstem TABLE'   
                   WHEN 'v' THEN 'SYstem VIEW'   
                   WHEN 'i' THEN 'SYstem INDEX'   
                   ELSE NULL   
                 END  
               WHEN n.nspname = 'pg_toast' THEN 
                 CASE c.relkind 
                   WHEN 'r' THEN 'SYstem TOAST TABLE'   
                   WHEN 'i' THEN 'SYstem TOAST INDEX'   
                   ELSE NULL   
                 END  
               ELSE 
                 CASE c.relkind   
                   WHEN 'r' THEN 'TEMPORARY TABLE'   
                   WHEN 'i' THEN 'TEMPORARY INDEX'   
                   ELSE NULL   
                 END  
             END  
             WHEN false THEN 
               CASE c.relkind  
                 WHEN 'r' THEN 'TABLE'  
                 WHEN 'i' THEN 'INDEX'  
                 WHEN 'S' THEN 'SEQUENCE'  
                 WHEN 'v' THEN 'VIEW'  
                 ELSE NULL  
               END  
             ELSE NULL  
           END  AS TABLE_TYPE,d.description AS REMARKS  
      FROM pg_catalog.pg_namespace n,pg_catalog.pg_class c  
 LEFT JOIN pg_catalog.pg_description d ON (c.oid = d.objoid 
                                      AND d.objsubid = 0)  
 LEFT JOIN pg_catalog.pg_class dc ON (d.classoid = dc.oid 
                                 AND dc.relname='pg_class'

解决方法

它是postgresql JDBC驱动程序中getTables()实现的一部分.

谷歌codesearch将引导您.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐