Создание базы данных в СУБД MS SQL Server

 

Содержание


1.Постановка задачи

.Информационно-логическая модель данных

.Физическая модель базы данных

.Создание базы данных в СУБД MSSQLServer

.1 Создание файла базы данных

.2 Создание базы данных с помощью программногоSQL-кода

.3 Создание диаграммы базы данных

.Создание SQL-запросов

.Хранимые процедуры

Заключение

Список использованных источников


1. Постановка задачи


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

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

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

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


2. Информационно-логическая модель данных


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

Сущность или информационный объект - это информационное описание некоторого реального объекта, процесса, явления или события. Сущность образуется совокупностью взаимосвязанных реквизитов, представляющих качественные и количественные характеристики предметной области. Примерами сущностей в данной базе данных могут быть Собственник, Судно, Инспектор ГИМС, и т. п. Каждой сущности нужно присвоить уникальное имя, соответствующее этому объекту.

Сущность может иметь множество реализаций - экземпляров. Например, каждый экземпляр объекта Собственник представляет конкретное физическое лицо. Экземпляр характеризуется совокупностью конкретных значений атрибутов и должен однозначно идентифицироваться значением ключа сущности, который может состоять из одного или нескольких ключевых атрибутов. Атрибут или несколько атрибутов, значения которых уникальным образом идентифицируют каждый экземпляр сущности, являются потенциальным ключом данной сущности. Потенциальных ключей может быть несколько. Таким образом, атрибуты подразделяются на ключевые и альтернативные. Значения каждого атрибута выбираются из соответствующего множества значений, включающего все потенциальные значения, которые могут быть присвоены атрибуту. Это множество значений называется доменом.

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

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

Каждому типу связи присваивается имя, которое должно представлять его функцию. Рассмотрим сущности «Судно» и «Место базирования». Между этими сущностями можно определить связь «Базируется», сопоставив каждому судну то место базирования, где оно находится на стоянке, или, наоборот, каждому месту базирования - корабли, которые там находятся.

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

Максимальное количество экземпляров одной сущности, связанных с одним экземпляром другой сущности обозначает понятие мощности связи.

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

Для бинарных связей показатель кардинальности может иметь следующие значения:

·"один к одному" (1 : 1),

·"один ко многим"(1 :N),

·"многие ко многим" (М :N).

Связи "один к одному" имеют место, когда каждому экземпляру первой сущности соответствует только один экземпляр второй сущности и наоборот, каждому экземпляру второй сущности соответствует только один экземпляр первой сущности.

Связи "один ко многим" - это такие связи, когда каждому экземпляру одной сущности может соответствовать несколько экземпляров другой сущности, а каждому экземпляру второй сущности может соответствовать только один экземпляр первой сущности. В такой связи первая сущность является главной, а вторая - подчиненной.

Связи "многие ко многим" - это такие связи, когда каждому экземпляру первой сущности соответствуют несколько экземпляров второй сущности и каждому экземпляру второй сущности может соответствовать несколько экземпляров первой сущности. Такие связи не могут непосредственно реализовываться в реляционной базе данных. Их можно реализовать путем введения дополнительного объекта «связка». Объект связка должен иметь идентификатор, образованный из идентификаторов исходных объектов.


Таблица 1.1. Объекты информационной модели и их свойства

СущностьАтрибутыСобственникУК Собственника, Фамилия, Имя, Отчество, Пол, Дата рождения, Адрес, Телефон, Паспорт, ИННСудноУК Судна, Вид судна, Год постройки, Место постройки, Заводской номер судна, Водоизмещение, Материал корпуса, УК Собственника, УК ДвигателяДвигательУК Двигателя, Вид двигателя, Мощность, Страна изготовитель, Марка, Заводской номер,Место базированияУК Места базирования, Тип водоема, Режим судоходства, Разрядность, УК СуднаИнспектор ГИМСУК Инспектора ГИМС, Должность, Фамилия, Имя, ОтчествоСудовой билетУК Судового билета, Номер предыдущего судового билета, Дата смены судового билета, Дата выдачи, УК Судна, УК Инспектора ГИМС

После создания данной таблицы можно построить логическую схему базы данных в программной среде ErWin(см. Рис. 2.1).



3. Физическая модель базы данных


Физическая модель БД определяет способ размещения данных на носителях (устройствах внешней памяти), а также способ и средства организации эффективного доступа к ним. Поскольку СУБД функционирует в составе и под управлением операционной системы, то организация хранения данных и доступа к ним зависит от принципов и методов управления данными операционной системы.

К вопросам организации данных относятся:

·выбор типа записи - единицы обмена в операциях ввода-вывода;

·выбор способа размещения записей в файле и метода оптимизации размещения;

·выбор способа адресации и метода доступа к записям.

Стадия физического проектирования БД в общем случае включает:

·выбор способа организации БД;

·разработку спецификации внутренней схемы;

·описание отображения концептуальной схемы во внутреннюю.

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

Следующим этапом проектирования базы данных является определение типов данных атрибутов сущностей (см. Рис. 3.1) и создание самой физической модели (см. Рис. 3.2).


Рис. 3.1. Определение типов данных атрибутов сущностей



4. Создание базы данных в СУБД MSSQLServer


.1 Создание файла базы данных


При создании базы данных SQLServer создает два физических файла: один для хранения объектов базы данных, другой - для журнала транзакций. Транзакция - это последовательность операций над БД, рассматриваемых СУБД как единое целое. Транзакция представляет собой набор действий, выполняемых с целью доступа или изменения содержимого базы данных.


.2 Создание базы данных с помощью программногоSQL-кода


На языке SQL создание таблицы осуществляется с помощью оператора CreateTable. После него необходимо указать имя будущей таблицы, названия столбцов, указать их типы данных и возможность того, что они будут принимать значение NULL. Это ключевое слово указывает на то, что данный столбец может содержать неопределенные значения. Столбцы первичных ключей обязательно имеют значение NOTNULL.

Пример создания таблицы


CREATE TABLE Sobstvennik

uk_sobstvennika char(6) NOT NULL ,CHAR(30) NOT NULL ,char(30) NOT NULL ,char(30) NULL ,bit NOT NULL ,_rozhddatetime NOT NULL ,char(50) NOT NULL ,char(16) NOT NULL ,char(25) NOT NULL ,char(25) NOT NULL ,KEY (uk_sobstvennika ASC)TABLE Dvigatel_dvigatelya char(6) NOT NULL ,_dvigatelya char(25) NOT NULL ,char(10) NOT NULL ,_izgotov char(15) NOT NULL ,char(25) NOT NULL ,_nomer_dvig char(8) NOT NULL ,KEY (uk_dvigatelya ASC)TABLE Sudno_sudna char(6) NOT NULL ,_sudna char(18) NOT NULL ,_postr char(4) NOT NULL ,_postr char(50) NOT NULL ,_nom_sud char(8) NOT NULL ,char(6) NOT NULL ,_korpus char(18) NOT NULL ,_sobstvennika char(6) NULL ,_dvigatelya char(6) NULL ,KEY (uk_sudna ASC),KEY (uk_sobstvennika) REFERENCES Sobstvennik(uk_sobstvennika),KEY (uk_dvigatelya) REFERENCES Dvigatel(uk_dvigatelya)TABLE Mesto_bazirovania_mesta_baz char(8) NOT NULL ,_vodoema char(18) NOT NULL ,_sudohod char(18) NOT NULL ,char(10) NOT NULL ,_sudna char(6) NOT NULL ,KEY (uk_mesta_baz ASC),KEY (uk_sudna) REFERENCES Sudno(uk_sudna)TABLE Inspector_GIMS_inspectora_gims char(6) NOT NULL ,char(18) NOT NULL ,char(30) NOT NULL ,char(30) NOT NULL ,char(30) NULL ,KEY (uk_inspectora_gims ASC)TABLE Sudovoi_bilet_sud_bileta char(8) NOT NULL ,_vidachidatetime NOT NULL ,_pred_sud_bil char(8) NULL ,_smen_sud_bildatetime NULL ,_inspectora_gims char(6) NULL ,_sudna char(6) NULL ,KEY (uk_sud_bileta ASC),KEY (uk_inspectora_gims)Inspector_GIMS(uk_inspectora_gims),KEY (uk_sudna) REFERENCES Sudno(uk_sudna)

go


Для создания базы данных скопируем код, сгенерированный в программной среде Erwin, в окно нового запроса NewQueryи выполним его командой Execute.

4.3 Создание диаграммы базы данных

база информационный билет маломерный

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

Для того, чтобы это выполнить выберем команду NewDatabaseDiagram из контекстного меню DatabaseDiagram (см. Рис. 4.2) и в появившемся диалоговом окне выбираем все таблицы для создания диаграммы базы данных (см. Рис. 4.3).


Рис. 4.2. Создание новой диаграммы


Рис. 4.2. Добавление таблиц в диаграмму


5. Создание SQL-запросов


Существует четыре основных типа запросов данных в SQL, которые относятся к языку манипулирования данными (Data Manipulation Language):

·INSERT - добавить строки в таблицу;

·UPDATE - изменить строки в таблице;

·DELETE - удалить строки в таблице;

·SELECT - выбрать строки из таблиц;

Пример 1. Добавление строки

Добавление новой строки в таблицу Sobstvennikпроизводится прямым заполнением полей таблицы, либо следующим образом (см. Рис. 5.1):

INSERTINTOSobstevennik

VALUES ('026', 'Никитин ', 'Сергей', 'Владимирович', 'Мужской', '21.10.1987', 'Новгород', ул. Советская, д.10, кв.5 ', '547-89-64' , '58 154 128 ', '215 558 596 254')


Рис. 5.1. Результат добавления строки в таблицу с помощью командыINSERT


Пример 2. Обновление строки в таблицы

Изменим строку, которую добавили (см. Рис. 5.2):


UPDATE Sobstvennik

SET familia='Белов 'familia='Никитин ';

Рис. 5.2. Результат обновления строки в таблице с помощью команды UPDATE


Пример 3. Удаление строки из таблицы

Удалим данную строку с помощью команды DELETE (см. Рис. 5.3)


DELETE FROM Sobstvennikfamilia='Белов ';


Результат выполнения команды DELETE

Запрос SELECT

Запрос SELECTимеет самое большое количество опций, поэтому он требует более подробного описания. Ниже приведены примеры использования этого запроса для получения различных выборок.

Пример 1

Запрос на выборку из таблицы «Судно». Данный запрос будет предоставлять список судов, построенных в Санкт-Петербурге, отсортированный по году постройки судна. Результат запроса (см. Рис. 5.4)

_sudna, vid_sudna, god_postr, mat_korpusSudnomesto_postr='Россия, Санкт-Петербург'BY god_postr ASC


Рис. 5.4. Выборка из таблицы «Судно». Результат запроса SELECT


Пример 2

Запрос на выборку из двух таблиц: «Инспектор ГИМС» и «Судовой билет». Данный запрос будет предоставлять информацию о инспекторах ГИМС, оформленных ими судовых билетах (УК судового билета, дату оформления, а также судно, на которое был оформлен билет). В данном запросе конкатенируются столбцы «фамилия», «имя», «отчество» инспектора ГИМС и результирующему столбцу присваивается имя «Инспектор». Результат запроса (см. Рис. 5.5)

.Inspector_GIMS.familia+dbo.Inspector_GIMS.imya+dbo.Inspector_GIMS.otchestvoas Инспектор, uk_sud_bileta,uk_sudna,data_vidachidbo.Inspector_GIMS INNER JOIN dbo.Sudovoi_biletdbo.Inspector_GIMS.uk_inspectora_gims=dbo.Sudovoi_bilet.uk_inspectora_gims


Рис. 5.5. Выборка из двух таблиц «Инспектор ГИМС» и «Судовой билет».


Результат запроса SELECT

Пример 3

Запрос на выборку из двух таблиц: «Судно» и «Двигатель». Данный запрос будет предоставлять информацию о количестве судов с двигателями каждой из марок. Для этого мы используем функцию COUNT. Результат запроса (см. Рис. 5.6)

dbo.Dvigatel.marka, COUNT(uk_sudna)AS

Количество судов с двигателями данной маркиdbo.Dvigatel inner join dbo.Sudnodbo.Dvigatel.uk_dvigatelya=dbo.Sudno.uk_dvigatelyaBY dbo.Dvigatel.marka


Рис. 5.6. Выборка из двух таблиц «Судно» и «Двигатель». Результат запроса SELECT и функции COUNT


6. Хранимые процедуры


Пример 1

Процедура с параметром @р делает запрос на выборку из таблиц «Инспектор», «Судовой билет». Данный запрос будет предоставлять информацию о количестве судовых билетов, оформленных определенным инспектором, указанным в параметре @р.


Заключение


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


Список использованных источников


1.Гайдамакин Н.А. «Автоматизированные информационные системы, базы и банки данных. Вводный курс», Москва, «Гелиос АРВ» 2002. - 368.

.Когаловский М.Р. «Перспективные технологии информационных систем», Москва, «ДМК Пресс» 2003. - 288.

.Петров В.Н. «Информационные системы», Москва, «Питер» 2003 - 688.


Содержание 1.Постановка задачи .Информационно-логическая модель данных .Физическая модель базы данных .Создание базы данных в СУБД MSSQLServer

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ