|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Alibek B., Вот, решение с помощью дополнительной таблицы - гуд! ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:29 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Предложите ваш вариант ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:30 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
m0m0k0Предложите ваш вариант Вариант чего? Ты задачу-то так и не озвучил. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:33 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
m0m0k0Построить уникальный ключ на флаг, это как? Легко, в таблице городов комбинацию ссылки на регион и флаг административного центра можно сделать уникальной. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:34 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Всё зависит от степени абстракции, с которой проектировать БД. Вариант от Gerros хороший, но его можно немного доработать. Если почитать Википедию , то в России существуют административные единицы четырех уровней. На первом уровне - 85 субъектов Федерации (области, республики, края), из них 3 города федерального значения (Москва, Санкт-Петербург и Севастополь). Город федерального значения не относится ни к какому региону, поэтому у таких городов в поле Код_Региона должно стоять NULL. Соответственно, если есть города федерального подчинения, то есть регионы без формального центра (Московская область, Ленинградская область). РегионыID_регионакод_регионаназвание_региона ID_региона и код_региона разные вещи, потому что у одного субъекта может быть несколько кодов (г. Москва - 77, 97, 99, 177 и т.д.). Поэтому нужна дополнительная таблица (связь один-ко-многим) РегионыID_регионакод_региона ГородаID_городаназвание_городакод_регионапризнак_административного_центра Таблица_административных_единиц_по_странам ( https://ru.wikipedia.org/wiki/Таблица_административных_единиц_по_странам) Кстати, область и город - не единственные административно-территориальные единицы. Есть более крупная - федеральный округ и более мелкая - районы, городские округа. Соответственно, можно развить абстракцию и дальше. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:44 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
m0m0k0Alibek B., Вот, решение с помощью дополнительной таблицы - гуд! Чем оно хорошо? Правильность данных обеспечивать будет так же сложно, что мешает для региона указать город не входящий в его состав? Что мешает город являющийся административным центром одного региона перевести в другой регион, в первом регионе он останется административным центром? На самом деле нужно отталкиваться от того как будет эта информация использоваться, если в отчетах по городам нужно выводить признак административный центр, то однозначно простой флаг в таблице городов, т.е. если эта информация используется для города, то помещать в таблицу городов, если в основном будет требоваться показывать город являющийся административным центром в списке регионов, тогда в таблицу регионов добавить ссылку на административный центр. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:48 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Немного ошибся. Хотел предложить таблицы вот в таком варианте: РегионыID_регионаназвание_региона Коды_регионовID_регионакод_региона ГородаID_городаназвание_городакод_регионапризнак_административного_центра ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:54 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
ultrasonic7поэтому у таких городов в поле Код_Региона должно стоять NULL. С одной стороны вроде бы правильно, с другой не всегда, зависит от задач, возможно для реальной системы будет выгоднее продублировать города федерального значения в регионы и добавить тип записи - регион, город федерального значения. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:56 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Жаль, нельзя отредактировать опубликованное сообщение. Во втором варианте в таблице "Города" вместо "код_региона" должно быть "ID_региона" ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 12:57 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
ultrasonic7Немного ошибся. Хотел предложить таблицы вот в таком варианте: Сейчас точно ошибся, почему в городах код_региона вместо ID_региона, для разных кодов одного региона будешь списки городов дублировать? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 13:01 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
iOracleDevultrasonic7поэтому у таких городов в поле Код_Региона должно стоять NULL. С одной стороны вроде бы правильно, с другой не всегда, зависит от задач, возможно для реальной системы будет выгоднее продублировать города федерального значения в регионы и добавить тип записи - регион, город федерального значения. Да, если посмотреть таблицу административных единиц, то города федерального значения, как и области, края и республики - это административные единицы первого уровня. Но только это не регионы, а субъекты РФ)) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 13:04 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
iOracleDevultrasonic7Немного ошибся. Хотел предложить таблицы вот в таком варианте: Сейчас точно ошибся, почему в городах код_региона вместо ID_региона, для разных кодов одного региона будешь списки городов дублировать? Да, уже поправил)) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 13:05 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Отредактированная таблица городов ГородаID_городаназвание_городаID_регионапризнак_административного_центра ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 13:07 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
А почему бы не послать аффтара сразу на ФИАС-ко?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 13:13 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, "имеется две таблицы "Регионы" и "Города", каждый город относится к какому-то региону, у каждого региона есть город, который является административным центром." Этого не достаточно? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 14:41 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
iOracleDev, Могу озвучить задачу, есть определенные товары, распределенные по городам (в основном по адм. центрам), при выдаче товара клиенту, нужно проверить его наличие в городе, который клиент указал при регистрации, если товаров в этом городе нет, то берем его из города, который является адм. центром. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 14:59 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
iOracleDev, Отличная идея ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 15:01 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
iOracleDevm0m0k0Построить уникальный ключ на флаг, это как? Легко, в таблице городов комбинацию ссылки на регион и флаг административного центра можно сделать уникальной. я про эту ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 15:01 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
m0m0k0Могу озвучить задачу Ну наконец-то разродился... Для этого не нужна ни таблица регионов, ни административные центры. Для каждого города просто указывается ссылка "где искать если здесь нету". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 15:37 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovm0m0k0Могу озвучить задачу Ну наконец-то разродился... Для этого не нужна ни таблица регионов, ни административные центры. Для каждого города просто указывается ссылка "где искать если здесь нету". Так себе решение ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 16:51 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
m0m0k0Так себе решение Это решение конкретной задачи, которое не сломается если в один прекрасный день опорная база логистики окажется не в административном центре, а вообще в соседнем регионе. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 17:17 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
m0m0k0Могу озвучить задачу, есть определенные товары, распределенные по городам (в основном по адм. центрам), при выдаче товара клиенту, нужно проверить его наличие в городе, который клиент указал при регистрации, если товаров в этом городе нет, то берем его из города, который является адм. центром. Странная постановка задачи, немного "прибитая гвоздями". Если требуется отслеживать наличие товаров, то нужно описание складов и описание какого то графа транспортной сети и выбирать по каким то (чуть чуть более сложным) правилам откуда брать (например- по кратчайшему расстоянию). ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 17:45 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Sergueim0m0k0Могу озвучить задачу, есть определенные товары, распределенные по городам (в основном по адм. центрам), при выдаче товара клиенту, нужно проверить его наличие в городе, который клиент указал при регистрации, если товаров в этом городе нет, то берем его из города, который является адм. центром. Странная постановка задачи, немного "прибитая гвоздями". Если требуется отслеживать наличие товаров, то нужно описание складов и описание какого то графа транспортной сети и выбирать по каким то (чуть чуть более сложным) правилам откуда брать (например- по кратчайшему расстоянию). Описание центров выдачи (складов) имеется. Всю логистику по доставке и распределению товаров по городам клиент берет на себя, необходимо считать только в разрезе городов. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 18:17 |
|
Помогите построить связь
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovm0m0k0Так себе решение Это решение конкретной задачи, которое не сломается если в один прекрасный день опорная база логистики окажется не в административном центре, а вообще в соседнем регионе. Приличный аргумент. Как бы вы релизовали данное решение? (конечно же целостность данных в проиритете). ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2019, 18:31 |
|
|
start [/forum/topic.php?fid=32&msg=39859354&tid=1539910]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
160ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 288ms |
0 / 0 |