«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему таблицы, сгенерированные JPA, упорядочены в алфавитном порядке и как исправить неправильный порядок столбцов?

Почему таблицы, сгенерированные JPA, упорядочены в алфавитном порядке и как исправить неправильный порядок столбцов?

Опубликовано 9 ноября 2024 г.
Просматривать:974

 Why are JPA-Generated Tables Ordered Alphabetically and How to Fix Incorrect Column Ordering?

Неправильный порядок столбцов в таблице, сгенерированной JPA: решение

При создании таблиц с использованием JPA (Java Persistence API) важно понимать поведение по умолчанию в отношении порядка столбцов. По умолчанию Hiberante упорядочивает столбцы в алфавитном порядке.

В представленном сценарии проблема возникает из-за алфавитного порядка имен столбцов. Согласно сообщению на форуме, этот порядок реализован для обеспечения детерминированного порядка в кластерах, поскольку порядок методов, возвращаемых виртуальной машиной, может различаться.

До Hibernate версии 3.2.1 GA столбцы упорядочивались на основе их возникновение. Однако изменение между версиями 3.2.0 GA и 3.2.1 GA привело к появлению алфавитного порядка.

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

Обходное решение: пользовательское именование столбцов

Поскольку для этой проблемы не существует встроенного решения, единственным жизнеспособным решением является Обходной путь — назвать столбцы таким образом, чтобы они располагались в желаемом порядке. Для этого может потребоваться переименовать некоторые столбцы или добавить префиксы или суффиксы для изменения их алфавитного порядка.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3