繁体   English   中英

Doctrine2 / DBAL + Postgresql-公共 主义查询中缺少模式 空查询结果

[英]Doctrine2/DBAL + Postgresql - public. schema missing in Doctrine queries | Empty query's result

在我的VPS服务器上查询Docctrine的查询,该查询负责计算已执行的迁移,不返回任何行。 问题很奇怪,使用PHPStorm有时也没有结果,但是只有当我跳过public时才会发生。 模式。 我无法使用public设置Doctrine的配置表名称。 由于进一步的DBAL问题而产生前缀。 本地化,我有相同版本的PgSQL 9.6和PHP 5.6,唯一的区别是@VPS是PHP 7.1。

#------------------------------------------------------------------------------
# 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

在此先感谢您的任何要求。

我发现了问题。 问题在于数据库用户与现有架构相同。 这就是Postgres默认情况下正在寻找名为schema的用户并找到它的原因。 将postgres conf更改为不寻找用户而是公共。 仅方案,已解决“问题”

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

search_path = 'public'    # schema names 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM