Во время нашей последней еженедельной встречи человек, не имеющий опыта работы в администрировании баз данных, поднял этот вопрос:
"Будет ли сценарий, который оправдывает хранение данных в виде строки (строки) вместо нескольких строк?"
Давайте предположим таблицу с именем, countryStates
где мы хотим хранить состояния страны; Я буду использовать США для этого примера и не буду перечислять все штаты ради лени.
Там у нас будет две колонки; один звонил, Country
а другой звонил States
. Как обсуждалось здесь , и предложенный @ srutzky в ответ , то PK
будет код определяется стандартом ISO 3166-1 альфа-3 .
Наша таблица будет выглядеть так:
+---------+-----------------------+-------------------------------------------------------+
| Country | States | StateName |
+---------+-----------------------+-------------------------------------------------------+
| USA | AL, CA, FL,OH, NY, WY | Alabama, California, Florida, Ohio, New York, Wyoming |
+---------+-----------------------+-------------------------------------------------------+
Задавая тот же вопрос другу-разработчику, он сказал, что с точки зрения объема трафика данных это может быть полезно, но не в том случае, если нам нужно манипулировать этими данными. В этом случае должна быть информация о коде приложения, которая могла бы преобразовать эту строку в список (скажем, что программное обеспечение, которое имеет доступ к этой таблице, должно создать поле со списком).
Мы пришли к выводу, что эта модель не очень полезна, но у меня возникло подозрение, что может быть способ сделать это полезным.
Я хотел бы спросить, видел ли кто-нибудь из вас, слышал или сделал что-то подобное таким образом, который действительно работает .
a;b;c
, использовать передний конец для разбора вашей строки вы получите то a
, b
, c
и нести на выполнение делать что - то с ними, может быть ?. Чувствую, что это может удовлетворить какую-то конкретную потребность таким образом ... Если подумать, нет. Вы всегда можете хранить идентификаторы, присоединяться к своим таблицам и создавать объединенную строку, которая может отправлять содержимое в FE ...