Я пытаюсь использовать Liquibase для нашего проекта. В основном мы используем базу данных Oracle и некоторую другую базу данных реже. Я пытаюсь понять, как указать порядок столбцов в случае индексов. Ниже приведен типичный набор изменений индекса.Liquibase createIndex column order
<createIndex indexName="PK_xxxxxxx" tableName="xxxxx" unique="true">
<column name="column_1"/>
<column name="column_2"/>
<column name="column_3"/>
</createIndex>
Когда дело доходит до производительности и масштабируемости приложений, порядок столбцов в индексе имеет большое значение. Можете ли вы, пожалуйста, направить меня, если есть способ указать это при создании индекса?
PS: В соответствии с документацией тега столбца атрибуты afterColumn
, position
существуют, и они применимы только для таблицы create. Вот что говорит об этом документация.
Если этот параметр используется в команде «addColumn», этот атрибут позволяет вам контролировать, где в столбце таблицы указывается, что находится новый столбец. Допускается только один из следующих столбцов, после окончания или места. С 3,1
Документация вы цитируете ссылается на команду "addColumn". Вы используете команду createIndex. –
@PeterHenell Да, во время создания таблицы порядок столбцов разрешен с использованием атрибутов «AfterColumn» или «Position». Мне было интересно, можно ли использовать его вместе с «CreateIndex». –
@a_horse_with_no_name, Спасибо. Обычно XML «меньше», означает, что если я использую другие стандартные инструменты для обработки XML при создании этих XML-файлов, нет никакой гарантии, что столбцы будут оставаться в порядке. Это была причина этого вопроса. –