2017-10-18 105 views
0

在我的VPS服務器上queires Doctrine的負責計數已執行的遷移的查詢不返回任何行。問題是奇怪的,使用PHPStorm有時我也沒有結果,但它只發生在我跳過public。架構。公衆不能在Doctrine的配置表名稱中設置。前綴由於進一步的DBAL問題。 Localy我得到了相同版本的PgSQL 9.6和PHP 5.6,onle的區別@VPS是PHP 7.1。Doctrine2/DBAL + Postgresql - public。在Doctrine查詢中缺少模式|空查詢的結果

#------------------------------------------------------------------------------ 
# CLIENT CONNECTION DEFAULTS 
#------------------------------------------------------------------------------ 

# - Statement Behavior - 

#search_path = '"$user", public' # schema names 
#default_tablespace = ''  # a tablespace name, '' uses the default 
#temp_tablespaces = ''   # a list of tablespace names, '' uses 

更改search_path有助於偏好,它有時會導致行顯示爲查詢的結果,然而Doctrine遷移仍然存在問題。

查詢:

SELECT * FROM doctrine_migration_versions; -- sometimes no results, even if ros actually exists 
SELECT * FROM public.doctrine_migration_versions; -- works always 

預先感謝任何answears。

回答

0

我發現了這個問題。問題在於數據庫用戶與現有模式相同。這就是爲什麼Postgres默認情況下正在尋找用戶命名的模式,並發現它。改變postgres conf不要尋找用戶,但公開。僅架構,解決了 '問題'

#search_path = '"$user", public' # schema names 

search_path = 'public' # schema names