Рекомендуемый способ добавления префиксов к строковым ключам (ключам строк) для хранения в базе данных - PullRequest
0 голосов
/ 14 февраля 2011

Каков рекомендуемый способ в Java добавлять префиксы к ключам String для хранения в базе данных веб-приложения?

У меня есть EntityId для каждой сущности, но я хочу хранить разные типы данных для сущности в разных строках, различающихся префиксными ключами EntityId , как этот формат: EntityId | PrefixForThisDataCategory

Ответы [ 2 ]

1 голос
/ 14 февраля 2011

Как правило, базы данных сопротивляются таким вещам. Тем не менее, они рады хранить символы префикса в отдельном столбце. Если этот столбец должен быть частью составного ключа, они тоже будут рады это сделать.

Но если вы хотите хранить разные типы данных в разных строках одной и той же таблицы, я надеюсь, что вас это не одобрит Базы данных - то есть базы данных SQL - предназначены для хранения разных типов данных в разных таблицах. Люди в одной таблице, адреса в другой таблице. , , не адреса в некоторых строках таблицы людей.

Конечно, вы можете стремиться к чему-то совершенно другому.

0 голосов
/ 14 февраля 2011

Если я правильно понимаю ваш вопрос, вы в основном хотите хранить данные, представляющие различные наборы информации, в общей таблице и использовать одно или несколько полей, чтобы различать, какой тип данных был сохранен.

ЭТО ДЕЙСТВИТЕЛЬНО ПЛОХАЯ ИДЕЯ!- должен был сказать это: -)

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...