Курсы программирования с нуля

Формула программиста
основатель — Волосатов Евгений Витольдович

Базы данных - Управление отелем

Практическое знакомство с базами данных на примере создания программы «Hotel - управление комнатами и клиентами» - планирование и проектирование базы данных, проектирование интерфейса и создание полноценного программного продукта, с использованием базы данных MySQL и MS-SQL.



5,000 руб.


Для подписки на пакет необходимо авторизоваться.

Список уроков | фото | видео

# Название видеоурока Решило Рейтинг Доступ
1 Вступление 00:08:49 48 чел. ★ 4.9 Done
  Отчёт отправил: 2146. Иван Решено за 10 мин. [Показать отчёт]
Научился: Повторил сущности 
Сложности: :) 
Комментарии: :) Перезагрузка 
2 Таблицы клиентов и заказов 00:25:03 46 чел. ★ 4.9 Done
  Отчёт отправил: 2146. Иван Решено за 15 мин. [Показать отчёт]
Научился: Еще раз подумал над созданием базы данных 
Сложности: :) 
Комментарии: Сделал скриншот из phpMyadmin , делал к прошлому курсу. 
3 Таблицы комнат и дней 00:22:47 44 чел. ★ 4.9 Done
  Отчёт отправил: 2146. Иван Решено за 20 мин. [Показать отчёт]
Научился: Повторяю пройденное. 
Сложности: Повторяю пройденное. 
Комментарии: Повторяю пройденное. 
4 Создание базы в MS Access 00:26:28 40 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 20 мин. [Показать отчёт]
Научился: Повторяю 
Сложности: Повторяю 
Комментарии: Повторяю 
5 Установка сервера MySQL 00:08:39 21 чел. ★ 4.9 Done
  Отчёт отправил: 2146. Иван Решено за 5 мин. [Показать отчёт]
Научился: mysql уже стоял 
Сложности: :) 
Комментарии: Сделал батничек, который запускает сервис(так как я его выключил) и запускает консоль , и сразу выбирает нужную базу данных.Все в в один клик! 
6 SQL запросы для создания Базы 00:24:00 39 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 20 мин. [Показать отчёт]
Научился: Повторил создание таблиц 
Сложности: :) 
Комментарии: Очень хорошо, что все повторил. 
7 Модель. Планирование. 00:04:53 39 чел. ★ 4.7 Done
  Отчёт отправил: 2146. Иван Решено за 15 мин. [Показать отчёт]
Научился: Интересно продумывать до , а не после. 
Сложности: Не сложно, но увлекательно почувствовать себя проектировщиком 
Комментарии: Вперед, к знаниям! 
8 Модель. Список задач. 00:23:02 37 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 35 мин. [Показать отчёт]
Научился: Хорошая практика! 
Сложности: Пришлось залезть в шпаргалку 
Комментарии: Сложные запросы не решился реализовывать. 
9 Модель. SQL запросы для Client 00:20:17 36 чел. ★ 4.8 Done
  Отчёт отправил: 2146. Иван Решено за 20 мин. [Показать отчёт]
Научился: Очень интересно. Узнал, что можно после delete сделать auto_increment=1 и нумерация пойдет с единички. 
Сложности: Пока все понятно. 
Комментарии: Обновил свои запросики. 
10 Модель. SQL запросы для Room 00:12:04 36 чел. ★ 4.9 Done
  Отчёт отправил: 2146. Иван Решено за 20 мин. [Показать отчёт]
Научился: Повторяю синтаксис sql 
Сложности: :) 
Комментарии: Идем полным ходом! 
11 Модель. SQL запросы для Book и Map 00:26:03 36 чел. ★ 4.8 Done
  Отчёт отправил: 2146. Иван Решено за 40 мин. [Показать отчёт]
Научился: Отличная практика составления запросов. 
Сложности: И даже с Join запросами. 
Комментарии: Очень понравилось, что проработали все запросы заранее.  
12 Модель. Имена методов. 00:26:12 34 чел. ★ 4.9 Done
  Отчёт отправил: 2146. Иван Решено за 30 мин. [Показать отчёт]
Научился: Хорошая подготовка к реализации кода! 
Сложности: Было просто 
Комментарии: Чувствую, что скоро уже начнем писать код. 
13 Класс MySQL. Драйвер и конструктор. 00:28:30 34 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 40 мин. [Показать отчёт]
Научился: Подключать References. В этот раз пошло не все гладко. MySql.Data подключилось, но с желтым треугольничком. Так что оказалось важно, какой из трех MySql.Data подключать. 
Сложности: Главное - внимание 
Комментарии: Спасибо за урок!Смотрю второй раз, и все равно интересно и поучительно. Чувствую, что если буду делать сам, обязательно буду подсматривать в уже сделанную работу. 
14 Класс MySQL. Получение таблицы. 00:23:55 34 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 40 мин. [Показать отчёт]
Научился: Продолжаю изучать класс MySqlCommand. 
Сложности: Получается! 
Комментарии: Не удержался и все-таки добавил dataGridView. Данные в него тоже удалось загрузить. Порадовало, что не пришлось вручную добавлять столбцы, все само загрузилось! 
15 Класс MySQL. Обработка ошибок. 00:13:22 34 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 30 мин. [Показать отчёт]
Научился: Научился красиво обрабатывать ошибки. Повторил использование DialogResult, а также цикл do... while 
Сложности: Интересно 
Комментарии: Спасибо за маленькие хитрости! 
16 Модульный тест 00:16:02 33 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 30 мин. [Показать отчёт]
Научился: Посмотрел, как можно создать модульный тест 
Сложности: Видит око, да зуб неймет. 
Комментарии: Не знаю что делать, так как в VS2008 не удалось найти Microsoft.VisualStudio.TestTools.UnitTesting Namespace.Решил ради такого случая скачать Comunity2015. Но, как и следовало ожидать, все это дело не для xp. Видимо я тут один с xp остался. Но пока возможности перейти на другую ос у меня нет. Так что выполнить этот урок ближайшее время не смогу, что очень печально. Надеюсь мне его все-таки зачтут... 
17 Отображение таблицы 00:06:18 33 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 10 мин. [Показать отчёт]
Научился: Использование DataSource 
Сложности: Трудностей не возникло. 
Комментарии: Чудесная магия. Поделюсь, как я запускаю sql сервер. Я его убрал из автозагрузки. Но чтобы все работало, надо его запустить. Для этого надо лезть в сервисы. В сервисы лезть лень, поэтому сделал bat файл такого содержимого @echo on setlocal set service=MySQL56 net start MySQL56 mysql -uroot -pvashparol' Теперь стоит нажать на этот файлик, как все запускается и открывается консоль с уже войденным mysql.  
18 Модель. Класс Клиента 00:24:57 32 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 40 мин. [Показать отчёт]
Научился: Использовать описание методов через ///  
Сложности: Все понятно 
Комментарии: Остался вопрос , что будет если do this.id = this.sql.Insert(query); while (this.sql.SqlError()); написать без this? Ведь у нас других id и sql в классе нет. 
19 Модель. Всё про Клиента 00:35:00 31 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 1 час. 00 мин. [Показать отчёт]
Научился: Спасибо , за функцию отлова ошибок при исполнении запросов mysql. Очень помогло! 
Сложности: Отловить одну запятаю 
Комментарии: Оказался не простой урок. Не хватило мне внимания, пришлось ловить ошибки. Модульные тесты, конечно, хорошо, но тест внутри самой программы - это еще круче. Очень мне он помог, без него бы долго разбирался ! 
20 Модель - Календарный год 00:29:48 27 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 40 мин. [Показать отчёт]
Научился: Осознал удобство insert ignore. Хорошая практика работы с DateTime Узнал как добраться до года в поле day : year(day); 
Сложности: Все доступно объяснено. 
Комментарии: Спасибо, очень познавательно. Всегда стараюсь помочь, если в отчете есть какой-то вопрос. 
21 Модель - Календарные праздники 00:20:00 25 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 30 мин. [Показать отчёт]
Научился: Повторил создание запросов 
Сложности: :) 
Комментарии: Хорошо продвигаемся. 
22 Модель. Класс комнаты 00:16:39 25 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 40 мин. [Показать отчёт]
Научился: Продолжаю осваивать создание функций. 
Сложности: C видео все просто 
Комментарии: Пока не могу создавать тесты, так как в 2008 vs нет unit testov/ 
23 Модель. Удаление комнат. 00:14:41 24 чел. ★ 4.8 Done
  Отчёт отправил: 2146. Иван Решено за 20 мин. [Показать отчёт]
Научился: Довел класс Room до совершенства. 
Сложности: :) 
Комментарии: Все интересно, даже написание комментариев. 
24 Модель. Тестирование комнат. 00:30:31 22 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 40 мин. [Показать отчёт]
Научился: Делать тесты без unit test 
Сложности: Как обычно, самое интересное - вылавливать ошибки и их исправлять. 
Комментарии: Продолжаю работать в студии 2008. Т.к. там юнит тестов нет, но очень хотелось что-то попробовать, решил сделать тесты прямо в самой программе. Это все же лучше, чем совсем без тестов. Как раз эти тесты позволили отловить две ошибки, чему я очень рад. Спасибо за урок! Двигаемся дальше! 
25 Модель. Бронирование. 00:29:40 22 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 1 час. 10 мин. [Показать отчёт]
Научился: Оттачиваю навыки создания классов и манипулирования данными. 
Сложности: Все поддалось. 
Комментарии: Спасибо за урок! Все очень интересно. Так как unit тестов у меня нет, тесты делаю сам. В прошлом отчете тест был прямо в коде главной формы. Сейчас все перенес все в отдельный класс Test. По поводу статуса в журнале book - мне понравились такие статусы: mark, paid, drop. Пришлось все-таки добавить функцию deleteBook(), чтобы не захламлять базу. Решил пока тестовую базу не делать, а все проверяю на единственной. Тесты нужно писать, так как ошибок они отловили у меня достаточно много... Рад, что удалось все отловить(надеюсь , что всё отловил:)) 
26 Модель. Статусы заказов. 00:14:52 21 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 20 мин. [Показать отчёт]
Научился: Повторяем пройденное и закрепляем его. 
Сложности: Сложно не было 
Комментарии: При проверке выяснилось, что у меня в классе sql функция Update возвращает количество строк, да еще в long. Поэтому result в классе book, в функциях UpdateFromDay, UpdateTillDay, UpdateStatus тоже пришлось переделать в long. 
27 Модель. Список заказов. 00:13:17 20 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 20 мин. [Показать отчёт]
Научился: Повторил вывод в грид. а также тренировка запроса select with join 
Сложности: Все легко получилось! 
Комментарии: Очень нравятся мне эти уроки! Добавить пока нечего, хочу делать дальше. 
28 Модель. Карта отеля 1 00:22:41 19 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 40 мин. [Показать отчёт]
Научился: Тренируюсь тестировать. 
Сложности: Все что хотел - удалось 
Комментарии: В результате тестирования пришел к выводу, что возвращать надо DataTable в функции SelectMap . Мы же должны показать что нашли. 
29 Модель. Карта отеля 2 00:18:56 19 чел. ★ 4.9 Done
  Отчёт отправил: 2146. Иван Решено за 30 мин. [Показать отчёт]
Научился: Повторяем. 
Сложности: Повторяем. 
Комментарии: Все-таки не очень понял: зачем в select map нужен инсерт. Интсерт - это инсерт, а селект - это селект. Если нам надо будет что-то добавить , тогда и добавим. А так нам просто нужно посмотреть , есть ли заселения на этот день или нет, просто посмотреть, больше никто не звонил, а мы все таки добавим пустую запись. И что нам потом с ней делать? Надеюсь, что дальше пойму это. 
30 Модель. Карта отеля 3 00:16:56 19 чел. ★ 4.9 Done
  Отчёт отправил: 2146. Иван Решено за 30 мин. [Показать отчёт]
Научился: Повторяю синтаксис запросов mysql 
Сложности: Все получается. Сложно не забыть вовремя установить переменные, чтобы запрос отработал верно. 
Комментарии: Оказалось очень интересно придумывать тесты. Ура! Доделал все доступные уроки, можно ждать следующих уроков. 
31 Вид. Список форм. 00:12:00 9 чел. ★ 5 Done
  Отчёт отправил: 2146. Иван Решено за 30 мин. [Показать отчёт]
Научился: Продумывать формы 
Сложности: фантазировать 
Комментарии: Очень интересно, как потом все будем связывать. 
  Итого:   31 видеоурок общей продолжительностью 10 час. 16 мин. 7 чел. ★ 4.95  
  Финалисты:   Денис,   Иван,   Николай (nick27m),   Валентин,   Lik_Kirill,   Frank,   Rita .

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: некоторые sql запросы
Трудности: разобраться с командной строкой
нет
Научился: Основы проектирования бд
Трудности: Сдержаться от добавления лишних колонок
Замечаний нет