Определить набор изменений для вставки запроса в при


У меня есть две следующие таблицы:

CREATE TABLE StudentMaster (
  sId      SERIAL,
  StudentName VARCHAR(50)
);

CREATE TABLE StudentClassMap (
  studnetId BIGINT UNSIGNED NOT NULL,
  studentClass VARCHAR(10),
  FOREIGN KEY (studnetId) REFERENCES StudentMaster (sId)
);

Это мой запрос insert.

INSERT INTO StudentMaster (studentName) values ('Jay Parikh');

INSERT INTO StudentClassMap (studnetId, studentClass)
values ((SELECT sId from StudentMaster where studentName='Jay Parikh'),
        'M.Sc. 1st Year');

Я хочу определить набор изменений для этих запросов в liquibase.

Для первого запроса набор изменений будет:

<changeSet author="unknown" id="insert-example">
    <insert tableName="StudentMaster ">
        <column name="studentName" value="Jay Parikh"/>
    </insert>
</changeSet>

Но я не знаю, как определить набор изменений для другого запроса.
Помощь есть ? Заранее спасибо.

1 2

1 ответ:

Используйте атрибут valueComputed:

<changeSet author="unknown" id="insert-example-2">
    <insert tableName="StudentClassMap">
        <column name="studentId" valueComputed="(SELECT sId from StudentMaster where studentName='Jay Parikh')"/>
        <column name="studentClass" value="McSc. 1st Year"/>
    </insert>
</changeSet>