2016-08-11 5 views
0

私は、クラスからpostgreSQLテーブルを作成するためにhibernateを使用しました。Hibernateはプレフィックス(public)を持つpostgreSQLテーブルを作成しました

すべて作成されたテーブルの名前は次のとおりです。public.xyz例えば

、実体は学生という名前の場合、作成されたテーブル名がpublic.student

クラスコードです:

@Entity(name="STUDENT") 

@SequenceGenerator 
(name = "default_sequence", sequenceName = "STUDENT_SEQUENCE", allocationSize = 1) 

public class Student extends BaseModel { ... } 

答えて

2

.文字の前のプレフィックス文字は、テーブル位置しています。

ほとんどのSQLデータベースと同様に、postgreSQLでは、テーブルを作成するときに、テーブルの所属スキーマを指定することができます。
postgreSQLの場合、スキーマが指定されていない場合、デフォルトで使用されるスキーマはpublicスキーマです。これは、任意のpostgreSQLデータベースで自動的に作成されるスキーマです。

デフォルトでは、このようなテーブル(およびその他のオブジェクト)は、自動的に という名前のスキーマに「public」という名前が付けられます。新しいデータベースにはすべて、このようなスキーマ が含まれています。

出典:ドットは、文字通り、テーブル名ではありません前にpostgreSQL documentation

+0

注あなたは 'public.xyz'というテーブルを作成することができますが、それは名前を二重引用符で囲まなければならないのです:' TABLEを公開するCREATE「public.xyz」。 ... ' –

関連する問題