Присвойте начальные значения базе данных H2 через data.sql и schema.sql - PullRequest
0 голосов
/ 22 ноября 2018

У меня есть список предметов, сопоставленных с сущностью.Как правильно связать их во время весенней инициализации в data.sql и schema.sql?

ID и другие методы для простоты опущены.Вот мои примеры моделей:

@Entity
@Table(name = "LOCATION")
public class LocationModel {

    @Column(name="LOCATION_ADDRESS")
    private String address;

    @OneToMany(cascade = CascadeType.ALL, mappedBy = "locationModel")
    private List<PlaceModel> placeList = new ArrayList<>();

Местоположение имеет список мест [ Отношение один ко многим ]

@Entity
@Table(name = "PLACE")
public class PlaceModel {

    @Column(name="PLACE_ADDRESS")
    private String address;

    @ManyToOne(fetch = FetchType.EAGER)
    private LocationModel locationModel;

Вот пример schema.sql файл для создания таблицы в базе данных H2. Первый вопрос: как создать правильную схему таблицы для списка?

CREATE TABLE LOCATION(
  LOCATION_ID BIGINT AUTO_INCREMENT PRIMARY KEY,
  LOCATION_ADDRESS VARCHAR(35) NOT NULL
);

CREATE TABLE PLACE(
  PLACE_ID BIGINT AUTO_INCREMENT PRIMARY KEY,
  PLACE_ADDRESS VARCHAR(35) NOT NULL,
);

мой data.sql файл. А во-вторых, как на самом деле заполнять данные здесь?

INSERT INTO LOCATION(LOCATION_ADDRESS) VALUES ('Location 1');

INSERT INTO PLACE(PLACE_ADDRESS, PLACE_COURT_NUMBER) VALUES ('Place 1', 14);
INSERT INTO PLACE(PLACE_ADDRESS, PLACE_COURT_NUMBER) VALUES ('Place 2', 12);

Спасибо за поддержку, ребята!

...