Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otchyot_0_1.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
498.94 Кб
Скачать

1.3 Описание предметной области

Выбранной предметной областью базы данных является управление данными об очередниках на получение жилья, их родственниках. В базу данных заносятся атрибуты очередников(посетителей), родственников (с отдельными описаниями), сотрудники и список обслуживаемых ими групп граждан, должности, которые могут занимать работники, группы граждан, для возможного разбития сотрудников на несколько отделов. На основе этих данных заполняется журнал записи.

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

База предоставляет пользователю (управляющему) информацию о очередниках, родственниках (с отдельными описаниями), сотрудниках и списке обслуживаемых ими групп, должностях, которые могут занимать работники, группах очередников, датах заполнения записей. Наиболее важными компонентами данной системы являются: очередник, родственник, группа, сотрудник и дата записи. Основными процессами являются: просмотр информации о очереднике и его родственниках.

Задачей данной базы является автоматизация и упрощение работы управляющего при контроле и внесении записей по очередникам сотрудниками администрации.

1.4 Инструментальные средства

СУБД - совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных. Встраиваемая СУБД - СУБД, которая может поставляться как составная часть некоторого программного продукта, не требуя процедуры самостоятельной установки. Встраиваемая СУБД предназначена для локального хранения данных своего приложения и не рассчитана на коллективное использование в сети. Физически встраиваемая СУБД чаще всего реализована в виде подключаемой библиотеки. Доступ к данным со стороны приложения может происходить через SQL либо через специальные программные интерфейсы.

Примеры: OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, Microsoft SQL Server Compact, ЛИНТЕР.

Для реализации данной Б.Д. были использованы программы MS SQL Server 2014 (для создания Б.Д.) т.к. она позволяет эффективно управлять базами данных различных масштабов – от персональной базы данных до инфраструктуры баз любого предприятия, и MS Visual Studio 2015 (для создания оболочки, позволяющей легко и удобно работать с Б.Д.)

1.5 ЛОГИЧЕСКАЯ МОДЕЛЬ БАЗЫ ДАННЫХ

Рисунок 1. Логическая модель базы данных

2. ПРАКТИЧЕСКАЯ ЧАСТЬ

2.1 РЕАЛИЗАЦИЯ БАЗЫ ДАННЫХ

2.1.1 СОЗДАНИЕ ТАБЛИЦ

Создание таблиц в MS SQL Server осуществляется двумя способами:

1. В списке объектов базы данных выбрать пункт «Таблицы» и нажать ПКМ, в появившимся меню выбрать «Создать», «Таблица».

2. С помощью использования средств DDL для создания объектов базы данных. Кликнуть по «Создать запрос» и в появившимся окне прописать код. Синтаксис: CREATE TABLE <название таблицы> (<название поля> <Тип данных> PRINORY KEY (первичный ключ))

В проекте были созданы таблицы: пакеты, поставщики, заказчики, служащие, допуск, сопровождение.

  1. Создание таблицы «Группа»

Название атрибутов

Тип полей

NULL

ID группы

int

Нет

Название

nchar

Да

Описание группы

nchar

Да

(Таблица 1. Атрибуты таблицы «Группа»)

USE [Administraciya]

GO

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Группа](

[ID группы] [int] NOT NULL,

[Название] [nchar](20) NULL,

[Описание группы] [nchar](200) NULL,

CONSTRAINT [PK_Группа] PRIMARY KEY CLUSTERED

(

[ID группы] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

(Программный код создания таблицы «Группа»)

2. Состав таблицы «Запись»

Название атрибутов

Тип полей

NULL

Номер записи

Int

Нет

ID сотрудника

Int

Нет

ID очередника

Int

Нет

ID члена семьи

Int

Нет

ID группы

Int

Нет

Дата

Date

Да

Примечание

Nchar(100)

Да

(Таблица 2. Атрибуты таблицы «Запись»)

USE [Administraciya]

GO

/****** Object: Table [dbo].[Запись] Script Date: 04.07.2016 1:32:41 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Запись](

[Номер записи] [int] NOT NULL,

[ID сотрудника] [int] NOT NULL,

[ID очередника] [int] NOT NULL,

[ID члена семьи] [int] NOT NULL,

[ID группы] [int] NOT NULL,

[Дата] [date] NULL,

[Примечание] [nchar](100) NULL,

CONSTRAINT [PK_Запись] PRIMARY KEY CLUSTERED

(

[Номер записи] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

ALTER TABLE [dbo].[Запись] WITH CHECK ADD CONSTRAINT [FK_Запись_Группа] FOREIGN KEY([ID группы])

REFERENCES [dbo].[Группа] ([ID группы])

GO

ALTER TABLE [dbo].[Запись] CHECK CONSTRAINT [FK_Запись_Группа]

GO

ALTER TABLE [dbo].[Запись] WITH CHECK ADD CONSTRAINT [FK_Запись_Очередники] FOREIGN KEY([ID сотрудника])

REFERENCES [dbo].[Очередники] ([ID очередника])

GO

ALTER TABLE [dbo].[Запись] CHECK CONSTRAINT [FK_Запись_Очередники]

GO

ALTER TABLE [dbo].[Запись] WITH CHECK ADD CONSTRAINT [FK_Запись_Очередники1] FOREIGN KEY([ID очередника])

REFERENCES [dbo].[Очередники] ([ID очередника])

GO

ALTER TABLE [dbo].[Запись] CHECK CONSTRAINT [FK_Запись_Очередники1]

GO

ALTER TABLE [dbo].[Запись] WITH CHECK ADD CONSTRAINT [FK_Запись_Родственники] FOREIGN KEY([ID члена семьи])

REFERENCES [dbo].[Родственники] ([ID члена семьи])

GO

ALTER TABLE [dbo].[Запись] CHECK CONSTRAINT [FK_Запись_Родственники]

GO

ALTER TABLE [dbo].[Запись] WITH CHECK ADD CONSTRAINT [FK_Запись_Сотрудники] FOREIGN KEY([ID сотрудника])

REFERENCES [dbo].[Сотрудники] ([ID сотрудника])

GO

ALTER TABLE [dbo].[Запись] CHECK CONSTRAINT [FK_Запись_Сотрудники]

GO

(Программный код создания таблицы «Запись»)

3. Состав таблицы «Очередники»

Название атрибутов

Тип полей

NULL

ID очередника

int

Нет

ФИО

nChar

Да

ПаспортСерия

nChar

Да

ПаспортНомер

nChar

Да

Кем выдан паспорт

nChar

Да

Дата рождения

Date

Да

Примечание

nChar

Да

Адрес

nChar

Да

Пол

nChar

Да

ID группы

Int

Да

ID члена семьи

Int

Да

(Таблица 3. Атрибуты таблицы «Очередники»)

USE [Administraciya]

GO

/****** Object: Table [dbo].[Очередники] Script Date: 04.07.2016 1:51:18 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Очередники](

[ID очередника] [int] NOT NULL,

[ФИО] [nchar](100) NULL,

[ПаспортСерия] [nchar](10) NULL,

[ПаспортНомер] [nchar](15) NULL,

[Кем выдан паспорт] [nchar](300) NULL,

[Дата рождения] [date] NULL,

[Примечание] [nchar](200) NULL,

[Адрес] [nchar](50) NULL,

[Пол] [nchar](10) NULL,

[ID группы] [int] NULL,

[ID члена семьи] [int] NULL,

CONSTRAINT [PK_Очередники] PRIMARY KEY CLUSTERED

(

[ID очередника] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

ALTER TABLE [dbo].[Очередники] WITH CHECK ADD CONSTRAINT [FK_Очередники_Группа] FOREIGN KEY([ID группы])

REFERENCES [dbo].[Группа] ([ID группы])

GO

ALTER TABLE [dbo].[Очередники] CHECK CONSTRAINT [FK_Очередники_Группа]

GO

ALTER TABLE [dbo].[Очередники] WITH CHECK ADD CONSTRAINT [FK_Очередники_Родственники] FOREIGN KEY([ID члена семьи])

REFERENCES [dbo].[Родственники] ([ID члена семьи])

GO

ALTER TABLE [dbo].[Очередники] CHECK CONSTRAINT [FK_Очередники_Родственники]

GO

(Программный код создания таблицы «Очередники»)

4. Состав таблицы «Родственники»

Название атрибутов

Тип полей

NULL

ID члена семьи

Int

Нет

Пол

nChar

Да

Тип родственных отношений

nChar

Да

ПаспортСерия

nChar

Да

ПаспортНомер

nChar

Да

Кем выдан паспорт

nChar

Да

Категория льгот

nChar

Да

ФИО родственника

nChar

Да

(Таблица 4. Атрибуты таблицы «Родственники»)

USE [Administraciya]

GO

/****** Object: Table [dbo].[Родственники] Script Date: 04.07.2016 1:59:56 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Родственники](

[ID члена семьи] [int] NOT NULL,

[Пол] [nchar](10) NULL,

[Тип родственных отношений] [nchar](100) NULL,

[ПаспортСерия] [nchar](10) NULL,

[ПаспортНомер] [nchar](10) NULL,

[Кем выдан паспорт] [nchar](300) NULL,

[Категория льгот] [nchar](100) NULL,

[ФИО родственника] [nchar](100) NULL,

CONSTRAINT [PK_Родственники] PRIMARY KEY CLUSTERED

(

[ID члена семьи] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

(Программный код создания таблицы «Родственники»)

5. Состав таблицы «Сотрудники»

Название атрибутов

Тип полей

NULL

ID сотрудника

int

Нет

Фамилия

nChar

Да

Имя

nChar

Да

Отчество

nChar (10)

Да

ID должности

Int

Нет

Адрес

nChar

Да

Телефон

nChar

Да

(Таблица 5. Атрибуты таблицы «Сотрудники»)

USE [Administraciya]

GO

/****** Object: Table [dbo].[Сотрудники] Script Date: 04.07.2016 2:00:53 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Сотрудники](

[ID сотрудника] [int] NOT NULL,

[Фамилия] [nchar](100) NULL,

[Имя] [nchar](100) NULL,

[Отчество] [nchar](100) NULL,

[ID должности] [int] NOT NULL,

[Адрес] [nchar](100) NULL,

[Телефон] [nchar](20) NULL,

CONSTRAINT [PK_Сотрудники] PRIMARY KEY CLUSTERED

(

[ID сотрудника] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

ALTER TABLE [dbo].[Сотрудники] WITH CHECK ADD CONSTRAINT [FK_Сотрудники_Должности] FOREIGN KEY([ID должности])

REFERENCES [dbo].[Должности] ([ID должности])

GO

ALTER TABLE [dbo].[Сотрудники] CHECK CONSTRAINT [FK_Сотрудники_Должности]

GO

(Программный код создания таблицы «Сотрудники»)

6. Состав таблицы «Должность»

Название атрибутов

Тип полей

NULL

ID должности

Int

Нет

Название

nChar

Да

ID группы

Int

Да

График

nChar

Нет

(Таблица 6. Атрибуты таблицы «Должность»)

USE [Administraciya]

GO

/****** Object: Table [dbo].[Должности] Script Date: 04.07.2016 2:07:26 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Должности](

[ID должности] [int] NOT NULL,

[Название] [nchar](100) NULL,

[ID группы] [int] NOT NULL,

[График] [nchar](100) NULL,

CONSTRAINT [PK_Должности] PRIMARY KEY CLUSTERED

(

[ID должности] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

ALTER TABLE [dbo].[Должности] WITH CHECK ADD CONSTRAINT [FK_Должности_Группа] FOREIGN KEY([ID группы])

REFERENCES [dbo].[Группа] ([ID группы])

GO

ALTER TABLE [dbo].[Должности] CHECK CONSTRAINT [FK_Должности_Группа]

GO

(Программный код создания таблицы « Должность »)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]