Разработка курса базы данных --- система управления отелем (MySQL, VBNet)
Разработка курса базы данных --- система управления отелем (MySQL, VBNet)

1. Знания и технологии

  1. Система управления базой данных (СУБД) Основы: Система управления базой данных — это ядро ​​системы управления гостиничными номерами.,Отвечает за хранение, получение, обновление и управление информацией о номерах. Он предоставляет такие функции, как определение данных, работа с данными и управление данными.,Обеспечить целостность, безопасность и надежность данных.
  2. Реляционная база теория данных: реляционная база данные в настоящее время являются наиболее широко используемой базой данных Один из типов данных, который упорядочивает данные по таблицам, строкам и столбцам и использует SQL (язык структурированных запросов) для операций с данными. Реляционная база данныхиметьданныеструктурированный、данные Высокая возможность совместного использования、данные Хорошая независимость и другие преимущества,Идеально подходит для хранения данных системы управления гостиничными номерами.
  3. Принцип проектирования базы данных: проектирование базы данных является ключевым звеном в разработке системы управления гостиничными номерами.,Он включает в себя логическую структуру, физическую структуру данных, а также безопасность и целостность данных. В процессе дизайна,Необходимо следовать принципу стандартизированного дизайна.,Обеспечить правильную организацию и эффективное хранение данных.

2. Анализ спроса

2.1 Функциональные требования

Функции, реализуемые данной системой, заключаются в следующем:

  1. 1. Управление информацией: вы можете запрашивать различную информацию, личную информацию, просматривать свою личную информацию, а также изменять свою личную информацию. Информация о пользователе Просмотр личной информации пользователя, добавление, удаление, изменение и проверка информации пользователя.
  2. 2. Управление информацией о клиенте. Вы можете создать нового клиента, ввести его идентификационный номер, имя, пол, номер мобильного телефона и другую информацию и соответствующим образом изменить информацию о клиенте.
  3. 3. Управление информацией о гостевой комнате: вы можете добавить соответствующую комнату в соответствующую комнату.,Удалить соответствующую комнату, Проверьте наличие мест и наличие номеров.
  4. 4. Управление заездом и выездом: клиенты могут зарегистрироваться в доступных номерах соответствующего типа.,Тогда вы можете проверить,система автоматически присваивает соответствующему заказу статус недействительный,Статус заезда установлен на «Выезд».,Установите статус соответствующей комнаты на свободное.
  5. 5、расходыAdmin:Admin、Сотрудники могут просматривать соответствующиерасходыинформация,При необходимости администратор может запросить или изменить доходы и расходы отеля.
  6. 6. Управление информацией о ценах: вы можете проверить стандарт зарядки номера.,Администраторы могут запрашивать и изменять стоимость номера.,Персонал может просмотреть информацию о стоимости номеров.
  7. 7. Управление информацией о предмете: вы можете просмотреть информацию о комнате для гостей. предмета,Статус товара, стоит ли использовать,Сделайте запрос о предметах.

2.2 Требования к данным

Требования к данным системы управления гостиничными номерами включают в себя следующие пункты:

  1. 1) Точность и производительность ввода и обработки данных в режиме реального времени.
  2. Точность ввода данных является обязательным условием для обработки данными.,Неправильный ввод приведет к тому, что система не сможет нормально распознаваться, что приведет к неправильному выводу.,В результате работа системы теряет смысл. Источником данных является ручной ввод. Ручной ввод должен быть отказоустойчивым за счет механизмов на интерфейсе системы. .
  3. 2) Согласованность и полнота данных
  4. Поскольку данные системы являются общими,в разных клиентах,Информация о номерах является общей.,Итак, как обеспечить согласованность этих данных?,Это проблема, которую должна решить система. решить эту проблему,Должна быть поддержка со стороны фоновой базы данных.

3. Схема потока данных и словарь данных.

3.1 Схема потока данных

3.1.1 Схема бизнес-процесса
3.1.2 Схема потока данных
3.1.3 Диаграмма отношений

3.2 Словарь данных

Таблица клиентов

Поле

Китайское объяснение

тип

ограничение

Примечание

cno

Номер клиента

Char(20)

Not null

Primary key

cname

Имя клиента

Char(10)

Not null

csex

Пол клиента

Char(2)

Not null

cid

Номер мобильного телефона клиента

Char(20)

Not null

Комнатный стол

Поле

Китайское объяснение

тип

ограничение

Примечание

Rno

Номер комнаты

Char(20)

Not null

Primary key

Rstyle

Номера

Char(10)

Not null

Rprice

Стоимость номера

Int

Not null

Rstate

Статус номера

Char(10)

Not null

Живой стол

Поле

Китайское объяснение

тип

ограничение

Примечание

Cno

Номер клиента

Char(20)

Not null

Primary key

Ccomedate

Дата заезда

Datetime

Not null

Cleftdate

дата отъезда

Datetime

Not null

Rno

Номер комнаты

Int

Not null

Ctime

Время заезда

Int

Not null

Camount

расходы

Int

Not null

Стол администратора

Поле

Китайское объяснение

тип

ограничение

Примечание

Ano

Номер администратора

Char(10)

Not null

Primary key

Aname

Имя администратора

Char(10)

Not null

Asex

Пол администратора

Char(2)

Not null

Apassword

Пароль для входа

Char(20)

Not null

Таблица предметов

Поле

Китайское объяснение

тип

ограничение

Примечание

Rno

Номер комнаты

Char(20)

Not null

Ritemno

Номер позиции

Int

Not null

Primary key

Ritemstate

Статус товара

Char(10)

Not null

Ritemname

Название предмета

Char(20)

Not null

4. Проектирование базы данных

4.1 Разработка концептуальной модели

Диаграмма ER (диаграмма сущность-связь) обеспечивает способ представления сущностей, атрибутов и отношений. (1) Тип объекта: представлен прямоугольником с именем объекта, написанным в прямоугольном поле. (2) Атрибуты: представлены эллипсами и соединены с соответствующими объектами ненаправленными ребрами. (3) Контакт: представлен ромбом, имя контакта написано в ромбовидной рамке и соединено со связанными с ним объектами ненаправленными краями.

Эта система использует метод диаграммы ER для разработки концептуальной структуры базы данных. Диаграмма системы ER выглядит следующим образом:

Диаграмма сущности клиента

Физическая схема помещения

Диаграмма сущности администратора

Диаграмма сущности элемента

Глобальная диаграмма ER

4.2 Разработка логической модели

Преобразуйте диаграмму ER в реляционную схему:

Гостевая комната(Номер комнаты,Номера,Статус номера, стоимость номера) клиент(Номер клиента,Имя,пол,Номер телефона) администратор(Номер сотрудника,Имя,пол,пароль) вещь(Номер комнаты,Название предмета,Статус товара) Регистрироваться(Номер комнаты,Время звезда, время выезда, расходы на проживание)

4.3 Реализация базы данных

Создание таблиц базы данных

4.4 Импорт данных

Данные здесь заполняются путем самостоятельного создания execl, а элементов данных не так много.

4.5 Создание и отображение представления

(1) Представление для запроса информации о клиенте определяется следующим образом.

Язык кода:javascript
копировать
Create view view_ customers (Номер клиента,Имя клиента,Пол клиента,Номер мобильного телефона клиента)

As  select  cno,cname,csex,cid

From   customers

(2) Представление для запроса информации о помещении определяется следующим образом.

Язык кода:javascript
копировать
Create view view_rooms (Номер комнаты,Номера,Стоимость номера,Статус номера)

As  select  rno, rstyle, rprice, rstate

From   rooms

(3) Порядок запроса информации о размещении (проживании) клиента следующий.

Язык кода:javascript
копировать
Create view view_living (Номер клиента,Номер комнаты,Дата заезда,дата отъезда,Время заезда,расходы)

As  select  cno,rno,ccomedate,cleftdate,ctime,camount

From   living

(4) Представление для запроса информации о номере определяется следующим образом.

Язык кода:javascript
копировать
Create  view  view_roomitem(Номер комнаты, номер позиции комнаты, гостевая комната Название предмета,Статус товара)

As  select  rno,,ritemno,ritemname,ritemstate

From   roomitem

Создать индекс

Создать триггер

Данзай Комнатный После добавления сообщения на стол отображается надпись «Занято», что означает, что клиент зарегистрировался. После удаления сообщения в столе отображается надпись «Выход», указывающая на то, что клиент ушел.

Язык кода:javascript
копировать
USE [hotel]

GO

Trigger [dbo].[roomsstatus_update]  

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger [dbo].[roomsstatus_update]

on [dbo].[rooms]

for update

as

declare @rno varchar(20),

@istf varchar(20)

select @istf=istf from ccomedate

where rno=@rno;

if @istf<>'Возвращено'

begin

update rooms

set rstate = 'Занят'

where rno=@rno

end;

if @istf='Пенсионер'

begin

update rooms

set rstate = 'бездействующий'

where rno=@rno

end;

Создайте триггер для Таблицы клиентов, чтобы отображать всю информацию в этой таблице при добавлении или удалении части информации.

хранимая процедура

Язык кода:javascript
копировать
create procedure [dbo].[Query_totalruzhushijian_feiyong]

       @ccomedate datetime,

       @cleftdate datetime,

       @rstyle varchar(10)

       as

       select sum(datediff(S,addtime,cleftdate)) as ctime,sum(rprice) as расходыобщий from living

       where addtime>= ltrim(@ccomedate) and cleftdate<=ltrim(@ctime) and rstyle=@rstyle

       group by rstyle;

--drop procedure Query_totalruzhushijian_feiyong;

GO

пять. Использование языка VBNET для дизайна страниц

Здесь мы используем язык VBNET только для простого построения модулей и не реализуем внешний интерфейс.

Отображение страницы:

Видно, что потребностями жилищного персонала можно непосредственно управлять:

(1) Добавить новых жителей

(2) Забронировать номер

Код: (Кодов здесь много, перехватывается только основной код, а остальные наклеены картинки этой системы управления)

(Вот код базы данных ссылок)


На этом сегодняшний рассказ заканчивается. Если вам нужен исходный код, вы можете позвонить мне в фоновом режиме! Также укажите на недостатки!

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose