2013-07-10 62 views
17

版本8.4.16(版本中沒有選擇)。psql:儘管存在關係,仍未找到關係

我登錄到我的數據庫如下:

psql -d JRuser 

得到的提示是:

JRuser=> 

我做\ d或\ DT希望看到在模式中的所有關係「的名單翻譯'

No relations found. 

但我可以從架構中的任何表中進行選擇而不出現任何問題。例如:

select * from translate.storage; --works fine 

我已經確保了訪問權限是正確的JRuser做\ DN +:

        List of schemas 
     Name  | Owner | Access privileges |   Description 
translate   | JRuser | JRuser=UC/JRuser  | 
           : postgres=UC/JRuser  

爲什麼我不能看到在翻譯模式中的表?

+1

我認爲你需要使用'\ DT翻譯。*' –

+0

我當然可以做到這一點,但直到今天我才能夠做到沒有任何限定符的\ d或\ d。我沒有改變任何配置設置,所以我感到困惑。 – lostinthebits

回答

20

\d in psql只顯示可見表,即在您的search_path

試試看:

SHOW search_path; 
SET search_path= translate; 
\d 

爲您的會話設置可能已經在某種程度上改變。有多種方法可以做到這一點:

相關問題後對dba.SE:

+0

如果用戶希望能夠在所有模式中顯示錶,search_path變量是否可以包含多個模式? – lostinthebits

+1

@lostinthebits:看到這裏:http://www.postgresql.org/docs/8.4/static/sql-set.html#AEN65998 –

+0

啊,很酷,謝謝你們倆。 – lostinthebits