Symfony没有考虑到指定的模式

后端开发 2026-07-10

我有一个Symfony应用,正打算把数据库从SQL Server迁移到PostgreSQL。数据库在SQL Server上属于 dbo 这个模式,但在PostgreSQL上将变成 snb

我在 .env 中修改了连接字符串,但Symfony似乎忽略了它。

数据库连接没问题,但Doctrine执行的查询并不包含该模式。

这是我的连接字符串:

"postgresql://postgres:*password*@127.0.0.1:5432/apps?serverVersion=18&charset=utf8&default_table_schema=snb"

我也尝试了以下这个:

"postgresql://postgres:*password*@127.0.0.1:5432/apps?serverVersion=18&charset=utf8&schema=snb"

我应该怎么做?

解决方案

最终,我在每个实体类之前都指定了模式
修改search_path不是一个选项,因为我会使用不同的模式

#[ORM\Table(name: 'adresse', schema: 'snb')]
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章