Hibernate创建带有前缀(public.)的postgreSQL表



我使用hibernate从类创建postgreSQL表

所有创建的表命名为:public.xyz

例如,如果实体名称为student,则创建的表名称为public.student

类代码:

@Entity(name="STUDENT")
@SequenceGenerator
(name = "default_sequence", sequenceName = "STUDENT_SEQUENCE", allocationSize = 1)
public class Student extends BaseModel { ... }

.字符前的前缀表示表所在的模式。

在postgreSQL和大多数SQL数据库中,当你创建一个表时,你可以指定表的所属模式。
对于postgreSQL,如果没有指定模式,则默认使用public模式。这是一个在任何postgreSQL数据库中自动创建的模式

默认情况下,自动放置这样的表(和其他对象)到一个名为"public"的模式中。每个新数据库都包含这样一个模式。

来源:postgreSQL文档

点前面的文本不是字面上的表名,而是模式的名称。public是Postgres的默认模式- https://www.postgresql.org/docs/8.1/static/ddl-schemas.html

最新更新