2015-06-06 2 views
2

Я использую Liquibase для управления миграцией базы данных. Кажется, что разница в команде MemSQL по сравнению с MySQL вызывает проблемы.Liquibase с MemSQL

Я бег следующей команды через LiquiBase: -

ALTER TABLE test.T_USER_AUTHORITY 
ADD CONSTRAINT fk_authority_name 
FOREIGN KEY (name) REFERENCES test.T_AUTHORITY (name) 

Это дает ошибку

«Характеристика 'FOREIGN (не Осколок) ключ к sharded таблице' не поддерживается от MemSQL. "

У меня нет контроля над Liquibase, и я не могу добавить слово SHARD между «FOREIGN key», чтобы сделать его «FOREIGN SHARD key».

Возможно, в MemSQL можно настроить все внешние ключи как ключи SHARD, так что нам не нужно добавлять ключевое слово SHARD к этой команде.

ответ

2

В MemSQL FOREIGN SHARD KEYs не может быть добавлен после создания таблицы, поэтому преобразование этого отношения FOREIGN SHARD KEY не будет работать.

В этом случае я не могу придумать решение, которое будет работать без изменения Liquibase, чтобы создать обычный индекс по имени, а не внешний ключ.