Исчезающие Внешние ключи в phpMyAdmin

Да, это возможно, просто добавьте эту аннотацию к классу объекта, который вы хотите десериализовать:

@JsonIgnoreProperties(ignoreUnknown = true)
6
задан Welbog 24 June 2009 в 13:55
поделиться

2 ответа

Необходимо использовать механизм InnoDB, чтобы иметь внешние ключи.

Касательно: http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html

8
ответ дан 8 December 2019 в 16:12
поделиться

При определении таблицы с механизмом устройства хранения данных MyISAM это принимает FOREIGN KEY ограничения, но это тихо выбрасывает их. Это анализирует их, но не хранит ограничение в метаданных таблицы и впоследствии не может осуществить ограничение. Когда Вы просите смотреть на идею базы данных определения таблицы, она ничего не знает о том ограничении, как Вы узнали.

То же самое происходит с CHECK ограничения (независимо от механизма устройства хранения данных); это анализирует синтаксис и принимает его, но затем игнорирует его.

По моему скромному мнению, это - ужасная вещь для продукта MySQL, чтобы сделать. Это принимает стандартный SQL без ошибки, оставляя Вас с впечатлением, что это собирается поддерживать ограничение стандартным способом. Но это не делает! Даже SHOW WARNINGS показывает, что MySQL игнорировал ограничение.

При использовании механизма устройства хранения данных InnoDB он действительно учитывает ограничение внешнего ключа.

6
ответ дан 8 December 2019 в 16:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: