Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Уважаемый All. Подскажите новичку. Уж очень не хочется делать ошибок на этапе проектирования, а спросить не кого. Где может возникнуть засада позже? ТЗ Имеем несколько теплоходов выполняющих рейсы. На каждом теплоходе у нас соответсвенно есть каюты (они различаются классу). В каютах живут люди. Делаю такую структуру. Чуствую что где-то ошибся. А понять не могу :) Как например будет выглядеть запрос о свободных каютах в одном круизе и запрос о не полностью заселенных каютах в том же круизе. Надо ли вводить в базу понятие места в каюте? Ведь мест в каюте может быть от 1 до 4, плюс диванчик, который тоже может быть местом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 12:21 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Похоже, ключ Заселения должен включать Круиз. Место вводить не обязательно, если только оно не указывается в путевке. С запросами проблем не видно. Успехов! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 13:16 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Согласен. У Заселения должен быть составной PK (КодКлиента,кодКаюты, КодКруиза) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 13:37 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochКак например будет выглядеть запрос о свободных каютах в одном круизе и запрос о не полностью заселенных каютах в том же круизе. Надо ли вводить в базу понятие места в каюте? Ведь мест в каюте может быть от 1 до 4, плюс диванчик, который тоже может быть местом.Для указанных запросов место в базе хранить не обязательно. Узнать количество занятых мест в каюте можно через Заселения (сколько заселилось). Узнать количество свободных мест можо как разность между кол. мест в каюте и кол. занятых мест в каюте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 13:40 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Спасибо большое за быстрый ответ. Мне тоже казалось, что надо бы делать PK из 3 полей, но в прочитанной литературе (немногочисленной пока) таких примеров не приводилось и связь многие-ко-многим всегда приводилась из двух полей. Это меня и смутило. Очень жалею сейчас о пропущенных лекциях в интитуте по теории БД. :( Чего бы почитать посоветуете на эту тему. Книг много, хочется лучшую :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 13:50 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
А если один клиент пожелает плыть в одиночку в 4 местной каюте? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:03 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
А зачем ключ сотрудника и ключ клиента в каютах? зачем вообще разносить физлиц на разные справочники? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:07 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
ModelR Место вводить не обязательно, если только оно не указывается в путевке. Или, например, позже в структуру БД будет вводится ЦЕНА за место, зависящая от категории каюты и круиза. Правильно я понимаю? Или же цены можно будет ввести другим образом? Каким например? Еще один ламерский вопрос, если позволите... Можно или нельзя ввести PK КодЗаселения , и избавится от составного ключа из 3 полей КодКаюты, КодКлиента, КодКруиза (читая форум, я понял, что это не всегда есть хорошо и по возможности следует избегать этой ситуации). ПОЧЕМУ? Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:11 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
СерегаА если один клиент пожелает плыть в одиночку в 4 местной каюте? дык он и будет там один. В чем проблема то? Не понимаю. Извините, за глупый вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:16 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Возможна ли покупка части круиза? Типа один клиент от Москвы до Астрахани, а другой обратно? Если возможно, то это в структуре не отражено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:17 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Валентин КА зачем ключ сотрудника и ключ клиента в каютах? зачем вообще разносить физлиц на разные справочники? Соотрудник отвечает за проданную каюту и контролирует, например сдачу всех документов на визу. Поэтому он обязательно должен фигурировать в заселении. Разносить может и не стоит. Не подумал так глубоко :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:19 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochдык он и будет там один. В чем проблема то? Не понимаю. Извините, за глупый вопрос. По структуре одно заселение = одно место. В данном случае это будет не так. И не понятно, на какое место поселен клиент - на основное или дополнительное. А это наверное разная цена + другие условия могут быть, типа только если клиент покупает всю каюту ему может быть предоставлено доп.место для ребенка например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:21 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
СерегаВозможна ли покупка части круиза? Типа один клиент от Москвы до Астрахани, а другой обратно? Если возможно, то это в структуре не отражено. Нет круиз продается полностью. Такая ситуация не возможна. Мне хочется в этой структуре пока не касаться финансов, но иметь возможность позже ввести необходимые таблицы малой кровью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:21 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochМне хочется в этой структуре пока не касаться финансов, но иметь возможность позже ввести необходимые таблицы малой кровью. ИМХО, это взаимоисключающие хотения. 8-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:22 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Серега По структуре одно заселение = одно место. В данном случае это будет не так. И не понятно, на какое место поселен клиент - на основное или дополнительное. А это наверное разная цена + другие условия могут быть, типа только если клиент покупает всю каюту ему может быть предоставлено доп.место для ребенка например. По ТЗ не имеет значения на каком месте к каюте живет пассажир. Важна свзяка клиент-каюта-круиз. Необходимо только контролировать чтобы в одной каюте в одном круизе не оказалось больше пассажиров чем того позволяют возможности каюты (ОсновныхМест+ДополнительныхМест) СерегаИМХО, это взаимоисключающие хотения. 8-) А если пойти путем через статусы оплаты путевки (забронировано, предоплата, полная оплата), а не через суммы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:33 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochПо ТЗ не имеет значения на каком месте к каюте живет пассажир. Важна свзяка клиент-каюта-круиз. Но количество то мест важно. Если я один оплачиваю 4х местную каюту и не хочу, что бы ко мне еще на диванчик кого то подселили? Это должно быть отражено, если такая ситуация возможна . Может ТЗ надо подправить - согласовать. kochА если пойти путем через статусы оплаты путевки (забронировано, предоплата, полная оплата), а не через суммы? Это тебе решать и придумывать. Я просто критикую (надеюсь конструктивно). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:39 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Серега Может ТЗ надо подправить - согласовать. Да я сам себе ТЗ :) Поправлю. Серега Я просто критикую (надеюсь конструктивно). Более чем. Спасибо, Серега. Наверно действительно введу понятие места. Позже отпишусь с ожиданием новой критики. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:45 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochНаверно действительно введу понятие места. Позже отпишусь с ожиданием новой критики. Вполне может быть будет достаточно ввести количество мест в "заселении". Тут надо думать и прикидывать ситуации. Изнасилуй заказчика на предмет выявления нестандартных ситуаций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:49 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochМожно или нельзя ввести PK КодЗаселения , и избавится от составного ключа из 3 полей КодКаюты, КодКлиента, КодКруиза (читая форум, я понял, что это не всегда есть хорошо и по возможности следует избегать этой ситуации). ПОЧЕМУ?Потому, что наличие потенциального ключа предотвращает, скажем, повторный ввод в БД одних и тех же данных о заселении. То есть либо должны отличаться рейсы (для того же человека и каюты), либо каюты (для того же человека и рейса), либо люди (для того же рейса и каюты). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:57 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Серега Вполне может быть будет достаточно ввести количество мест в "заселении". гениально ! Серега Изнасилуй заказчика а вот этого не надо. я сам заказчик :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 14:58 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
На такой схеме нужны ли обведенные связи. Что дает их наличие? Отсутствие? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 15:07 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochа вот этого не надо. я сам заказчик :) Так ты "владелец заводов, газет, пароходов"? И еще программы пишешь? Ну ты и скряга. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 15:07 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Серега kochа вот этого не надо. я сам заказчик :) Так ты "владелец заводов, газет, пароходов"? И еще программы пишешь? Ну ты и скряга. а куда деваться Шучу, конечно не владелец. Просто хочется помочь родной alma mater ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 15:12 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochНа такой схеме нужны ли обведенные связи. Что дает их наличие? Отсутствие? Теплоход - Место лишняя связь. Можно через "каюты" узнать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 15:14 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
koc. я сам заказчик :)Тогда постарайтесь посмотреть на пару шагов вперед, включая финансы. Потраченное время не сравнимо с десятой долей того, что придется передлывать на живой системе. Про ключи писали много, кратко написал здесь . Читать лучше Дейта. Объемно, но лучше него никто не объясняет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2005, 15:17 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
За Дейта спасибо. Основательная книженция. Скачал 7 издание. 8-го не нашел. Кто знает их отличия? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 12:56 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
начал копать различные варианты и понял что начальная структура (мой первый пост в этом топике) никуда не годится. я продаю место в каюте. На месте всегда живет физлицо. Заказ на это место может разместить как само физлицо проживающее на этом месте, так и организация продавшая это место физлицу и передавшая заказ мне. В заказе может быть заброниравано сразу несколько мест в различных каютах и круизах. Мозг дымится. :) Не пойму с какой стороны начать распутывать этот клубок. Застрял на этом этапе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 13:32 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Гляньте, может поможет? http://www.sql.ru/forum/actualthread.aspx?tid=228144&pg=2&hl=customer_id#2002929 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 13:53 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
сорри, впердь буду пользоваться поиском. Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 14:27 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Самое главное в вашей системе чтоб дважды не забронировать/не продать билеты на однои то же место в одном и том же круизе. И чтоб отчеты по забронированным/проданным/вакантным местам получались быстро. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 14:40 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Господа, покритикуйте плз. Просьба отнестись с пониманием и вниманием (если конечно у вас есть для этого время). Это первая база которую я попытался спроектировать. :) Серега, что думаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 14:59 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
gardenmanСамое главное в вашей системе чтоб дважды не забронировать/не продать билеты на однои то же место в одном и том же круизе. а для этого надо ввести поля в таблице МЕСТА ЗабронированоС и ЗабронированоДо. Правильно? или быть может, чтобы не плодить огород сделать это можно через запрос с полями ДатаНачалаКруиза и ОкокнчаниеКруиза? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 15:04 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
kochСерега, что думаешь? Ничего. Пятница же. Вроде нормально. Может еще типы мест и типы кают в справочники загнать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 15:09 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Серега Может еще типы мест и типы кают в справочники загнать. это сделано, просто не стал отображать на схеме, дабы не отвлекать внимания от сути ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2005, 15:29 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
господа гуру. Дайте плз комметнраии по поводу последней схемы. Для полноты картины так сказать. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2005, 10:34 |
|
||
|
Помогите с проектированием
|
|||
|---|---|---|---|
|
#18+
Расскажите, а как в вашей схеме учитываться будут отказы (возвраты), и собственно деньги? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2005, 10:56 |
|
||
|
|

start [/forum/topic.php?all=1&fid=32&tid=1545553]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
177ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 258ms |
| total: | 540ms |

| 0 / 0 |
