|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Кот Матроскинкак, на Ваш взгляд, тут поможет отсутствие предложенного unique constraint? Поможет не столько отсутствие constraint-а, сколько проектирование, учитывающее неуникальность этих данных. Начиная хотя бы с вопроса клиенту - "а как вы считаете эти данные, когда на маршруте есть одноимённые остановки? как понимаете, о какой из них речь?" ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2018, 15:00 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
KreatorXXIНе переназовёшь. Судя, например, по Москве. Ну Москва не показатель. В других местах переназывают. Помнится в одном городе раньше было четыре остановки "Школьная" (ну почти как в примере со "Школой") и находились они в разных районах, так что маршруты ездили только по одной из них. И всё равно переименовали их так, что в итоге осталась одна остановка "Школьная". В другом городе была остановка "НИИтяжмаш", построили церковь, при этом НИИ прекратил свою деятельность, остановку переименовали в "Храм Рождества Христова", была остановка "Кинотеатр Темп", кинотеатр разрушили, остановку называли "Улица Хмелева", была остановка "Автомагазин", автомагазин закрыли, переименовали в "Переулок Черниговский", а затем, когда руководство медицинского центра пооббивало пороги администрации города, переименовали в "Диагностический центр". Теперь диагностический центр расформирован, может быть и остановку в скором времени переименуют. Одним словом, постоянно названия остановок изменяют. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2018, 06:44 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
softwarerнаивно думали, что номер маршрута всегда числоВ прошлом году видел в Москве номера маршрута "О". Т.е. просто кружочек. Было ли это буквой "О" или цифрой 0 - не знаю :) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2018, 07:50 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
miksoftsoftwarerнаивно думали, что номер маршрута всегда числоВ прошлом году видел в Москве номера маршрута "О". Т.е. просто кружочек. Было ли это буквой "О" или цифрой 0 - не знаю :) Для полноты веселья - мимо меня довольно долго ходил маршрут "028". Существенно отличающийся от 28-го. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2018, 10:18 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
softwarerДля полноты веселья - мимо меня довольно долго ходил маршрут "028". Существенно отличающийся от 28-го. А, ну и само собой, кучу лет, а может и до сих пор есть, был маршрут "43 красный". В то время как в Сочи, помнится, были маршруты "12 левый" и "12 правый". ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2018, 10:20 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Mr.FontaineKreatorXXIНе переназовёшь. Судя, например, по Москве. Ну Москва не показатель. В других местах переназывают. Помнится в одном городе раньше было четыре остановки "Школьная" (ну почти как в примере со "Школой") и находились они в разных районах, так что маршруты ездили только по одной из них. И всё равно переименовали их так, что в итоге осталась одна остановка "Школьная". В другом городе была остановка "НИИтяжмаш", построили церковь, при этом НИИ прекратил свою деятельность, остановку переименовали в "Храм Рождества Христова", была остановка "Кинотеатр Темп", кинотеатр разрушили, остановку называли "Улица Хмелева", была остановка "Автомагазин", автомагазин закрыли, переименовали в "Переулок Черниговский", а затем, когда руководство медицинского центра пооббивало пороги администрации города, переименовали в "Диагностический центр". Теперь диагностический центр расформирован, может быть и остановку в скором времени переименуют. Одним словом, постоянно названия остановок изменяют. Москва, как раз показатель. Если в городе сто остановок, то можно и переименовать. А когда сто тысяч, то смысла нет. Одни неудобства. Как пример. Автобусы 162, 269 идут по ул. Севанская. Остановки так - "Ул. Севанская", потом "Продмаг" (которого типа уже давно нет), потом "Ул. Севанская" (но это уже другая, в километре от той). Грубо говоря (хотя Севанская улица не очень показательна в этом плане), все остановки на пересечении этой улицы с другими называются "Улица Севанская". И это живёт десятилетиями. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2018, 10:28 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
KreatorXXIMr.Fontaineпропущено... Ну Москва не показатель. В других местах переназывают. Помнится в одном городе раньше было четыре остановки "Школьная" (ну почти как в примере со "Школой") и находились они в разных районах, так что маршруты ездили только по одной из них. И всё равно переименовали их так, что в итоге осталась одна остановка "Школьная". В другом городе была остановка "НИИтяжмаш", построили церковь, при этом НИИ прекратил свою деятельность, остановку переименовали в "Храм Рождества Христова", была остановка "Кинотеатр Темп", кинотеатр разрушили, остановку называли "Улица Хмелева", была остановка "Автомагазин", автомагазин закрыли, переименовали в "Переулок Черниговский", а затем, когда руководство медицинского центра пооббивало пороги администрации города, переименовали в "Диагностический центр". Теперь диагностический центр расформирован, может быть и остановку в скором времени переименуют. Одним словом, постоянно названия остановок изменяют. Москва, как раз показатель. Если в городе сто остановок, то можно и переименовать. А когда сто тысяч, то смысла нет. Одни неудобства. Смысл ровно такой же, как и при 100 остановках - устранение коллизий. И даже если город не станет переименовывать географический объект "остановка" - это все равно не повод транспортной компании не наводить порядок с элементом маршрута "остановка". ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2018, 10:41 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
miksoftВ прошлом году видел в Москве номера маршрута "О". Т.е. просто кружочек. Было ли это буквой "О" или цифрой 0 - не знаю :) Главное, не пытайтесь на него поделить :) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2018, 12:22 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Остановка имеет инвентанрный номер, ибо это объект инфраструктуры, который как правило на балансе у города/обслуживающей организации. Этот балансовый номер и будет естественным ключом для вас. А там, где он придумывается, он будет суррогатным ключом. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2018, 00:46 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
нельзя делать первичный ключ по названию хотя бы потому что остановка в одну сторону от о остановки в другую могут сильно различаться по географии ... |
|||
:
Нравится:
Не нравится:
|
|||
31.12.2018, 12:26 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
bochkovнельзя делать первичный ключ по названию хотя бы потому что остановка в одну сторону от о остановки в другую могут сильно различаться по географии Разумеется нельзя. Тут Вы никой Америки не открыли. Первичный ключ в такой базе разумеется суррогатный и служит для удаления и обновления. Но хочется иметь человекопонятный естественный ключ, без чисел по которому бы оператор мог как-то различать разные остановки без запоминания непонятных чисел. В принципе любую остановку можно описать уникально. Например, в моем городе есть две остановки "Улица Марии Мелентьевой" 1. На улице Мелентьевой на нечетной стороне домов, рядом с киоском по продаже цветов и домом номер 7. 2. По Октябрьскому проспекту, рядом с перекрестком с улицей Мелентьевой. По Октябрьскому проспекту, рядом с домом 53. Как бы это нормализовать? Надеюсь, что все помнят, что в поле таблицы должны быть данные из одного домена! Казалось бы ту все просто. Реальная улица, реальный дом. Но. У нас тут кучу домов посносили. Киоски перенесли. Плюс еще есть несколько остановок, которые находятся внутри лесных массивов, где нет никаких домов. Или рядом только один дом. Север, запад - хорошее предложение,но если двумя остановками "Школа" 20 км, то как оператор сразу определит, которая из них севернее или западнее? Мне, ошибочно, казалось, что если показывать оператору часть карты, то он четко все определит. Фиг вам. Я, обремененный высшим образованием, прекрасным чувством ориентации в городах и отличным знанием картографии, запутался на тех местах своего родного города, гдя я не бывал лично ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2019, 19:41 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Тут главная проблема - максимально урезать "творчество" операторов. Чтобы один не написал "Напротив, через дорогу, памятник", а другой "Рядом цветочный киоск". В идеале все признаки должны выбираться из комбобоксов ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2019, 19:58 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
KreatorXXIАвтобусы 162, 269 идут по ул. Севанская. Остановки так - "Ул. Севанская", потом "Продмаг" (которого типа уже давно нет), потом "Ул. Севанская" (но это уже другая, в километре от той). Грубо говоря (хотя Севанская улица не очень показательна в этом плане), все остановки на пересечении этой улицы с другими называются "Улица Севанская". И это живёт десятилетиями. там ещё есть остановка "Ул.Севанская, 12" :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 06:41 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Cat2Тут главная проблема - максимально урезать "творчество" операторов. Чтобы один не написал "Напротив, через дорогу, памятник", а другой "Рядом цветочный киоск". В идеале все признаки должны выбираться из комбобоксов Так чем формат: Код: plaintext
Три или четыре (если есть желание разбить списка направления "от остановки" и "к остановке") комбобокса и остановка идентифицируется однозначно. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 07:00 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Mr.FontaineKreatorXXIАвтобусы 162, 269 идут по ул. Севанская. Остановки так - "Ул. Севанская", потом "Продмаг" (которого типа уже давно нет), потом "Ул. Севанская" (но это уже другая, в километре от той). Грубо говоря (хотя Севанская улица не очень показательна в этом плане), все остановки на пересечении этой улицы с другими называются "Улица Севанская". И это живёт десятилетиями. там ещё есть остановка "Ул.Севанская, 12" :-) Правильно. Если остановка не на пересечении улиц, подставляются дома в название. Если никакого значимого более-менее уникального объекта рядом нет. Общемосковская практика. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 11:01 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Mr.FontaineТак чем формат: Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 11:17 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
bochkovнельзя делать первичный ключ по названию хотя бы потому что остановка в одну сторону от о остановки в другую могут сильно различаться по географии Я еще в 90-е делал прогу для завода. В одной из таблиц сделал уникальным поле с номером авто. В итоге же оказалось что на заводе были два авто с одним и тем же номером - Зил и какая-то легковушка и оба, вполне нормально, стояли на учете! Ну у меня хоть не ключ был - просто пришлось убрать уникальность... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2019, 12:04 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Mr.FontaineТак чем формат: Код: plaintext
Наличием кольцевых маршрутов На "Фиолетовом" для В следующий - Б, на "Красном" для Б следующий - В. На "Синем" - оба варианта. Правда проблема c "Синим" решается, если еще указать прямое это или обратное направление ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2019, 20:00 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
KreatorXXIвсе остановки на пересечении этой улицы с другими называются "Улица Севанская". И это живёт десятилетиями. У нас есть ул.Мурманская. Ее пересекают набережная Варкауса, Октябрьский пр., Первомайский проспект. Рядом с этими перекрестками по две остановки. Разумеется, все они называются "ул.Муранская" ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2019, 20:06 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Cat2, так направление к/от ближайшей остановки надо указывать не применительно к конкретному маршруту, а относительно правил движения по улицам. О каких маршрутах идёт речь, если мы создаём справочник остановок? Собственно говоря в начале тобой ставилась задача: "Придумать естественный первичный ключ для остановки общественного транспорта. По этому ключу пользователь должен выбирать остановку из справочника для внесения в маршрут." То есть сначала создаётся справочник остановок, и в ключе обозначения остановок вообще не должно быть упоминания о маршруте. а уже потом придумываются маршруты. Для твоего примера справочник остановок будет следующим: А(Левая улица)(к E) А(Левая улица)(к Д) Б(Верхняя улица)(от В) Б(Верхняя улица)(к В) В(Верхняя улица)(от Б) В(Верхняя улица)(к Б) Г(Правая улица)(к В) Г(Правая улица)(к Д) Д(Нижняя улица)(к А) Д(Нижняя улица)(к Г) Е(Верхняя улица) Тогда привязка маршрутов к остановкам создаётся следующим образом: - для Фиолетового: А(Левая улица)(к Д) Д(Нижняя улица)(к Г) Г(Правая улица)(к В) В(Верхняя улица)(к Б) Б(Верхняя улица)(от В) А(Левая улица)(к Д) - для Красного: А(Левая улица)(к Е) Б(Верхняя улица)(к В) В(Верхняя улица)(от Б) Г(Правая улица)(к Д) Д(Нижняя улица)(к А) А(Левая улица)(к Б) - для Синего: А(Левая улица)(к Д) Д(Нижняя улица)(к Г) Г(Правая улица)(к В) В(Верхняя улица)(к Б) Б(Верхняя улица)(от В) Е(Верхняя улица) Б(Верхняя улица)(к В) В(Верхняя улица)(от Б) Г(Правая улица)(к Д) Д(Нижняя улица)(к А) А(Левая улица)(к Е) А(Левая улица)(к Д) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2019, 09:37 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Cat2KreatorXXIвсе остановки на пересечении этой улицы с другими называются "Улица Севанская". И это живёт десятилетиями. У нас есть ул.Мурманская. Ее пересекают набережная Варкауса, Октябрьский пр., Первомайский проспект. Рядом с этими перекрестками по две остановки. Разумеется, все они называются "ул.Муранская" Вот посмотри, о чём я говорю на примере реальных остановок Петрозаводска: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2019, 10:12 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
miksoftMr.FontaineТак чем формат: Код: plaintext
Ну, извините, сократил обозначение поля и смысл исказился: ближайшая остановка по направлению (или против направления) движения (не обязательно прямолинейному) транспортных средств (то есть не только общественного транспорта) принятого правилами дорожного движения государства ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2019, 11:31 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Cat2Цель - отслеживание положения автобусов на действующих маршрутах. Суперцель - заработать денег за написание программы. Ловите наркомана конкурента Яндекса! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2019, 17:51 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
Mr.FontaineДля твоего примера справочник остановок будет следующим: А(Левая улица)(к E) А(Левая улица)(к Д) Б(Верхняя улица)(от В) Б(Верхняя улица)(к В) В(Верхняя улица)(от Б) В(Верхняя улица)(к Б) Г(Правая улица)(к В) Г(Правая улица)(к Д) Д(Нижняя улица)(к А) Д(Нижняя улица)(к Г) Е(Верхняя улица) А если повернуть схему на 180 градусов? Ну да ладно, можно север-юг вместо верх-низ. А если на 90? Тогда запад-восток. А если это будут не прямоугольники, а какие-то кривые? На кривых улицах оператор не всегда может определить, что севернее, что восточнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2019, 22:09 |
|
Естественный первичный ключ для остановки общественного транспорта
|
|||
---|---|---|---|
#18+
HawkmoonCat2Цель - отслеживание положения автобусов на действующих маршрутах. Суперцель - заработать денег за написание программы. Ловите наркомана конкурента Яндекса! Нет! Я всего-лишь хочу кусочек от этого жирного пирога! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2019, 22:09 |
|
|
start [/forum/topic.php?fid=32&msg=39753275&tid=1539966]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
others: | 242ms |
total: | 405ms |
0 / 0 |