2016-08-11 2 views
0

Ich habe Hibernate verwendet, um PostgreSQL-Tabellen aus Klassen zu erstellen.Hibernate erstellt PostgreSQL-Tabellen mit Präfix (public.)

alle erstellten Tabellen werden genannt: public.xyz

zum Beispiel, wenn das UnternehmenStudent namens, dann ist die erstellte Tabelle Name ist public.student

Klassencode:

@Entity(name="STUDENT") 

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

public class Student extends BaseModel { ... } 

Antwort

2

Das Präfix vor dem .-Zeichen stellt das Schema für die Tabelle dar befindet sich.

In postgreSQL wie in den meisten SQL-Datenbanken können Sie beim Erstellen einer Tabelle das zugehörige Schema der Tabelle angeben.
Und im PostgreSQL-Fall, wenn das Schema nicht angegeben ist, ist das standardmäßig verwendete Schema das public-Schema. Es ist ein automatisch in jeder PostgreSQL-Datenbank erstelltes Schema.

Standardmäßig werden solche Tabellen (und andere Objekte) automatisch in ein Schema mit dem Namen "public" eingefügt. Jede neue Datenbank enthält ein solches Schema.

Quelle: postgreSQL documentation

+0

Beachten Sie, dass Sie eine Tabelle 'public.xyz' genannt erstellen können, aber es ist Name in doppelten Anführungszeichen eingeschlossen werden müßte:' TABLE öffentlich CREATE "public.xyz". ... ' –

Verwandte Themen