Реализация базы данных и серверной части информационной системы "ГАИ" средствами СУБД Microsoft SQL Server

Информационные задачи и круг пользователей системы. Выработка требований и ограничений. Разработка проекта базы данных. Программная реализация проекта базы данных. Разработка хранимых процедур для поддержки сложных ограничений целостности в базе данных.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 17.06.2012
Размер файла 706,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Содержание

Введение

1. Реализация базы данных и серверной части информационной системы «ГАИ» средствами СУБД Microsoft SQL Server

1.1 Анализ предметной области

1.2 Анализ информационных задач и круга пользователей системы

1.3 Выработка требований и ограничений

1.4. Разработка проекта базы данных

1.5 Программная реализация проекта базы данных

1.6 Разработка хранимых процедур для поддержки сложных ограничений целостности в базе данных

1.7 Разработка триггеров для поддержки сложных ограничений целостности в базе данных

1.8 Запросы

1.9 Представления

Заключение

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

Приложение А ПРОГРАММА СОЗДАНИЯ БАЗЫ ДАННЫХ

Приложение Б ДИАГРАММА БАЗЫ ДАННЫХ

Приложение В ПРОГРАММА ВВОДА ТЕСТОВЫХ ДАННЫХ

Приложение Г РЕАЛИЗАЦИЯ ЗАПРОСОВ НА ЯЗЫКЕ SQL

Введение

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

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

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

Система управления базами данных - это комплекс программных и языковых средств, необходимых для создания, обработки баз данных и поддержания их в актуальном состоянии.

Задачей курсовой работы является разработка и реализация базы данных и серверной части информационной системы оптовый склад средствами СУБД Microsoft SQL Server 2008. Microsoft SQL Server - система управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Основной используемый язык запросов - Transact-SQL - является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL)с расширениями.

1. Реализация базы данных и серверной части информационной системы «ГАИ» средствами СУБД Microsoft SQL Server

1.1 Анализ предметной области

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

В соответствии с предметной областью система строится с учётом следующих особенностей:

1) Каждый автомобиль имеет свой уникальный номер;

2) Каждый автомобиль должен иметь дату регистрации;

3) На каждого водителя создается запись с его данными;

Выделим базовые сущности этой предметной области:

1) Автомобили - это связь между водителями и кодами марки.

Атрибуты: код автомобиля, код владельца, код марки, госномер, номер кузова, номер двигателя, номер техпаспорта, дата выпуска, дата регистрации, цвет.

2) Угнанные автомобили. Атрибуты: код заявки, дата угона, дата подачи заявления, код автомобиля, код владельца, обстоятельства угона, отметка о нахождении, дата нахождения.

3) Владельцы. Атрибуты: код владельца, ФИО, дата рождения, адрес, номер паспорта, номер прав, дата выдачи прав, категория.

4) Марки. Атрибуты: код марки, название, код фирмы, код страны.

5) Фирмы. Атрибуты: код фирмы, название.

6) Страны. Атрибуты: код страны, название.

1.2 Анализ информационных задач и круга пользователей системы

Система создаётся для обслуживания следующих групп пользователей:

1) Сотрудники ГАИ.

2) Владельцы автомобилей.

Функциональные возможности:

1) ведение базы данных (запись, чтение, модификация, удаление);

2) реализация хранимых процедур и триггеров для поддержания сложных ограничений целостности в базе данных;

3) реализация наиболее часто встречающихся запросов и представлений для пользователей в готовом виде;

1.3 Выработка требований и ограничений

база данное пользователь информационный

Основные ограничения целостности:

1. Текстовые поля могут содержать только символы русского алфавита, цифры и знаки препинания.

2. В отношении FIRM порядковые номера фирм могут начинаться с 1 и не должны превышать число 9999, фирма не может не иметь названия.

3. В отношении COUNTRY порядковые номера стран могут начинаться с 1 и не должны превышать число 9999, страна не может не иметь названия.

4. В отношении AM_MARK порядковые номера марок автомобилей могут начинаться с 1 и не должны превышать число 9999, марка автомобиля не может не иметь названия.

5. В отношении DRIVERS порядковые номера водителей могут начинаться с 1 и не должны превышать число 9999, водитель не может не иметь ФИО, даты рождения, адреса проживания, паспорта (соответственно, его номера), водительского удостоверения (соответственно, его номера, даты выдачи и категории).

6. В отношении AM порядковые номера автомобилей могут начинаться с 1 и не должны превышать число 9999, поставленный на учет автомобиль не может не иметь владельца (его кода), марки (ее кода), государственного регистрационного номера, номера кузова, номера двигателя, техпаспорта (его номера), даты выпуска, даты регистрации и цвета.

7. В отношении JACKED_CARS порядковые номера угнанных автомобилей могут начинаться с 1 и не должны превышать число 9999, угнанный автомобиль не может быть незарегистрированным, ввиду чего все требования для отношения зарегистрированных автомобилей справедливы для данного отношения.

1.4. Разработка проекта базы данных

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

Рис.1. Структура БД

Таблица 1. Автомобили

Имя
столбца

Содержательное
описание

Тип

данных

Раз-мер-
ность

Область допустимых значений

Возможность значения Null

Роль

Пример

AM_CODE

Код автомобиля

Целый

4

0001-9999

Нет

PK

1234

AM_DRIVER_CODE

Код водителя

Целый

4

0001-9999

Нет

FK

1234

AM_MARK_CODE

Код марки

Целый

4

0001-9999

Нет

FK

1234

AM_REG_NUMBER

Госномер

Символьный

8

«А-Я», «0-9»

Нет

А001АА01

AM_BODY_NUMBER

Номер кузова

Целый

9

000000001-999999999

Нет

123456789

AM_ENGINE_NUMBER

Номер двигателя

Целый

9

000000001-999999999

Нет

123456789

AM_TECHPASSPORT_NUMBER

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

Целый

9

000000001-999999999

Нет

123456789

AM_BIRTHDATE

Дата выпуска

Дата

10

Нет

01.01.2000

AM_REGISTRATION_DATE

Дата регистрации

Дата

10

Нет

01.01.2000

AM_COLOR

цвет

Символьный

7

«А-Я», «0-9»

Нет

Белый

Таблица 2. Автомобили в угоне

Имя
столбца

Содержательное
описание

Тип

данных

Раз-мер-
ность

Область допустимых значений

Возможность
значения
Null

Роль

Пример

JC_CODE

Код угона

Целый

4

0001-9999

Нет

PK

1234

JC_JACKDATE

Дата угона

Целый

10

Нет

01.01.2000

JC_REPORT_DATE

Дата подачи заявки

Дата

10

Нет

01.01.2000

JC_AM_CODE

Код угнанного а/м

Целый

4

0001-9999

Нет

FK

1234

JC_DRIVER_CODE

Код владельца

Целый

4

0001-9999

Нет

FK

1234

JC_ADDITIONAL

Доп. Сведения

Символьный

30

«А-Я», «0-9»

Да

Ночью

JC_FOUND

Отметка о нахождении

Логический

1

0-1

Да

1

JC_FOUND_DATE

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

Дата

10

Да

01.01.2000

Таблица 3. Водители (владельцы а/м)

Имя
столбца

Содержательное
описание

Тип

Данных

Раз-мер-
ность

Область допустимых значений

Возможность
значения
Null

Роль

Пример

DRIVER_CODE

Код водителя

Целый

4

0001-9999

Нет

PK

1234

DRIVER_FIO

ФИО

Символьный

33

«А-Я», «0-9»

Нет

Банников Денис Павлович

DRIVER_BIRTHDATE

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

Дата

10

Нет

06.11.1991

DRIVER_ADRESS

Адрес

Символьный

30

«А-Я», «0-9»

Нет

Отцовский пер. 1-1

DRIVER_PASSPORT

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

Целый

10

1111111111-9999999999

Нет

5602123456

DRIVER_RULES

Номер вод. удостовер.

Символьный

12

Нет

123А4569Р1

DRIVER_RULES_DATE

Дата выдачи прав

Дата

10

Нет

06.11.2009

DRIVER_CATEGORY

Категория прав

Символьный

1

«А-Я»

Нет

В

Таблица 4. Марки автомобилей

Имя
столбца

Содержательное
описание

Тип

Данных

Раз-мер-
ность

Область допустимых значений

Возможность
значения
Null

Роль

Пример

MARK_CODE

Код марки

Целый

4

0001-9999

Нет

PK

1234

MARK_NAME

Название марки

Символьный

30

«А-Я»

Нет

Лада

FIRM_CODE

Код фирмы

Целый

4

0001-9999

Нет

FK

1234

COUNTRY_CODE

Код страны

Целый

4

0001-9999

Нет

FK

1234

Таблица 5. Фирмы

Имя
столбца

Содержательное
описание

Тип

Данных

Раз-мер-
ность

Область допустимых значений

Возможность
значения
Null

Роль

Пример

FIRM_CODE

Код фирмы

Целый

4

0001-9999

Нет

PK

1234

FIRM_NAME

Название фирмы

Символьный

30

«А-Я»

Нет

Audi

Таблица 6. Страны

Имя
столбца

Содержательное
описание

Тип

Данных

Раз-мер-
ность

Область допустимых значений

Возможность
значения
Null

Роль

Пример

COUNTRY_CODE

Код страны

Целый

4

0001-9999

Нет

PK

1234

COUNTRY_NAME

Название страны

Символьный

30

«А-Я»

Нет

Россия

1.5 Программная реализация проекта базы данных

Программная реализация проекта базы данных выполнена с помощью операторов языка SQL CREATE, DROP, UPDATE, INSERT

Текст программы создания базы данных приведен в приложении А.

Для спроектированной базы данных средствами СУБД Microsoft SQL Server 2008 R2 построена диаграмма, которая приведена в приложении Б.

Текст программы ввода тестовых данных приведен в приложении В.

1.6 Разработка хранимых процедур для поддержки сложных ограничений целостности в базе данных

Для облегчения работы с БД и реализации сложных ограничений были разработаны следующие процедуры:

1.Процедура просмотра кодов белых автомобилей.

Данная процедура выводит коды всех белых автомобилей.

CREATE PROC PROC1

AS

SELECT AM.AM_CODE AS "KOD"

FROM AM

WHERE AM.AM_COLOR='WHITE'

Выполнение и результат:

Имеем:

SELECT * FROM AM

Рис. 2

EXEC PROC1

Получим:

Рис. 3

2. Процедура поиска автомобиля по номеру

Данная процедура выводит цвет и дату выпуска автомобиля с указанным номером

CREATE PROC PROC2

@NOMER char(40)

AS

SELECT AM.AM_REG_NUMBER AS "HOMEP", AM.AM_BIRTHDATE AS 'DATA BbIIIYSKA', AM.AM_COLOR AS 'LI,BET'

FROM AM

WHERE AM.AM_REG_NUMBER=@NOMER

Выполнение и результат:

EXEC PROC2 'A001AA01'

Получим:

Рис. 4

3.Процедура удаления строки автомобиля по коду.

Данная процедура удаляет автомобиль по его коду.

CREATE PROC PROC3

@CODE_AM INT

AS

DELETE AM

WHERE AM.AM_CODE=@CODE_AM

Выполнение и результат:

Рис. 5

EXEC PROC3 7;

SELECT * FROM AM;

Получим:

Рис. 6

1.7 Разработка триггеров для поддержки сложных ограничений целостности в базе данных

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

1)Данный триггер производит удаление всех связей из таблиц автомобилей и угнанных автомобилей при удалении владельца.

Событие: в базе данных производится удаление строки владельца.

Предусмотренные действия: строка будет удалена из таблицы владельцев, будут удалены соответствующие строки из таблиц угона и автомобилей.

CREATE TRIGGER TRIGGERINSERT

ON DRIVERS FOR DELETE

AS

SELECT @id = DRIVER_CODE FROM DELETED

DELETE FROM JACKED_CARS WHERE JC_DRIVER_CODE = @id

DELETE FROM AM WHERE AM_DRIVER_CODE = @id

PRINT 'DRIVER AND DATA DELETED'

2)Данный триггер не позволяет внести в таблицу владельцев повторяющуюся запись.

Событие: в базу данных добавляется запись о водителе с ФИО, которые уже имеются в таблице БД.

Предусмотренные действия: SQL выдаёт сообщение, что такая запись уже есть.

CREATE TRIGGER TRIGGERINSERT

ON DRIVERS FOR INSERT

AS

DECLARE @FIO CHAR(33), @FIO1 CHAR(33)

SELECT @FIO=DRIVER_FIO FROM INSERTED

SELECT @FIO1=DRIVER_FIO FROM DRIVERS WHERE DRIVER_FIO=@FIO

IF @FIO=@FIO1

BEGIN

ROLLBACK TRANSACTION

PRINT 'THIS DRIVER ALREADY EXISTS'

END

ELSE

PRINT 'DRIVER ADDED'

1.8 Запросы

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

В курсовой работе разработаны следующие запросы:

1. Показать коды всех белых автомобилей

2. Показать все немецкие марки автомобилей

3. Показать всех водителей с фамилией Гришин (GRISHIN)

4. Показать информацию по белым автомобилям, владельцами которых являются водители категории В

5. Показать все угнанные автомобили, выпущенные после 10.10.1991

6. Показать все угнанные после 01.01.2003 автомобили

7. Показать все угнанные после 01.01.2003 белые автомобили

8. Показать все угнанные у водителей категории В после 01.01.2003 автомобили

9. Показать всех водителей AUDI

10. Показать всех водителей белых AUDI

Подробный текст запросов и результаты их выполнения приведены в приложении Г.

1.9 Представления

В данной работе были разработаны следующие представления, основанные на нескольких таблицах:

1. Создаем представление, включающее в себя ФИО водителя, марку его автомобиля и его цвет.

CREATE VIEW VIEW1 ("BODuTEJIb", "MAPKA", "LI,BET")

AS SELECT DRIVERS.DRIVER_FIO, AM_MARK.MARK_NAME, AM.AM_COLOR

FROM DRIVERS, AM_MARK, AM

WHERE AM.AM_DRIVER_CODE=DRIVERS.DRIVER_CODE AND AM.AM_MARK_CODE=AM_MARK.MARK_CODE

Рис. 7

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

CREATE VIEW VIEW2 ("DATA BbIIIYCKA", "LI,BET", "HOMEP")

AS SELECT MAX(AM.AM_BIRTHDATE), AM.AM_COLOR, AM.AM_REG_NUMBER

FROM AM

GROUP BY AM.AM_BIRTHDATE,AM.AM_COLOR, AM.AM_REG_NUMBER

Рис. 8

3. Создадим представление, которое можно использовать для быстрого анализа владельца и его автомобиля.

CREATE VIEW VIEW3 ("BODuTEJIb", "IIACIIOPT", "ADPEC", "HOMEP", "LI,BET", "MAPKA")

AS SELECT DRIVERS.DRIVER_FIO, DRIVERS.DRIVER_PASSPORT, DRIVERS.DRIVER_ADRESS,AM.AM_REG_NUMBER, AM.AM_COLOR, AM_MARK.MARK_NAME

FROM DRIVERS, AM, AM_MARK

WHERE AM.AM_DRIVER_CODE=DRIVERS.DRIVER_CODE AND AM.AM_MARK_CODE=AM_MARK.MARK_CODE

Рис. 9

Заключение

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

Разработана структура базы данных, состоящая из 6 таблиц.

Разработаны ограничения целостности для сохранения логической непротиворечивости данных в системе.

Разработаны наиболее часто употребляемые в данной предметной области запросы.

Разработаны и отлажены хранимые процедуры, упрощающие работу с БД.

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

Разработаны представления, повышающие комфорт и безопасность работы с системой.

Таким образом, были успешно реализованы все особенности предметной области и требования, выработанные на этапе проектирования.

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

1. М. Грабер «ПониманиеSQL».

2. И. Казакова. «Основы языка TransactSQL» - ПГУ, 2010г.

3. Электронный справочник по Transact SQL

http://www.sql.ru/docs/mssql/tsql_ref/

Приложение А

ПРОГРАММА СОЗДАНИЯ БАЗЫ ДАННЫХ

CREATE DATABASE GAI

GO

--ON PRIMARY

--(NAME = GAI, FILENAME = 'C:\GAI.MDF', SIZE = 100MB, MAXSIZE = 150, FILEGROWTH = 20)

--LOG ON

--(NAME = GAI_LOG, FILENAME = 'C:\GAI.LDF', SIZE = 100MB, MAXSIZE = 150, FILEGROWTH = 20)

--USE GAI

CREATE TABLE FIRM

(

FIRM_CODE INT PRIMARY KEY CHECK (FIRM_CODE < 9999 AND FIRM_CODE > 0000),

FIRM_NAME CHAR(30) NOT NULL,

)

CREATE TABLE COUNTRY

(

COUNTRY_CODE INT PRIMARY KEY CHECK (COUNTRY_CODE < 9999 AND COUNTRY_CODE > 0000),

COUNTRY_NAME CHAR(30) NOT NULL,

)

CREATE TABLE AM_MARK

(

MARK_CODE INT PRIMARY KEY CHECK ( MARK_CODE > 0000 AND MARK_CODE < 9999),

MARK_NAME CHAR (30) NOT NULL,

FIRM_CODE INT NOT NULL CHECK (FIRM_CODE < 9999 AND FIRM_CODE > 0000),

COUNTRY_CODE INT NOT NULL CHECK (COUNTRY_CODE > 0000 AND COUNTRY_CODE < 9999),

FOREIGN KEY (FIRM_CODE) REFERENCES FIRM (FIRM_CODE),

FOREIGN KEY (COUNTRY_CODE) REFERENCES COUNTRY (COUNTRY_CODE),

)

CREATE TABLE DRIVERS

(

DRIVER_CODE INT PRIMARY KEY CHECK (DRIVER_CODE > 0000 AND DRIVER_CODE < 9999),

DRIVER_FIO CHAR (30) NOT NULL,

DRIVER_BIRTHDATE DATE NOT NULL,

DRIVER_ADRESS CHAR (30) NOT NULL,

DRIVER_PASSPORT INT NOT NULL,

DRIVER_RULES CHAR (12) NOT NULL,

DRIVER_RULES_DATE DATE NOT NULL,

DRIVER_CATEGORY CHAR (1) NOT NULL,

)

CREATE TABLE AM

(

AM_CODE INT PRIMARY KEY CHECK (AM_CODE < 9999 AND AM_CODE > 0000),

AM_DRIVER_CODE INT NOT NULL,

AM_MARK_CODE INT NOT NULL,

FOREIGN KEY (AM_DRIVER_CODE) REFERENCES DRIVERS (DRIVER_CODE),

FOREIGN KEY (AM_MARK_CODE) REFERENCES AM_MARK (MARK_CODE),

AM_REG_NUMBER CHAR (8) NOT NULL,

AM_BODY_NUMBER INT NOT NULL,

AM_ENGINE_NUMBER INT NOT NULL,

AM_TECHPASSPORT_NUMBER INT NOT NULL,

AM_BIRTHDATE DATE NOT NULL,

AM_REGISTRATION_DATE DATE NOT NULL,

AM_COLOR CHAR (7) NOT NULL,

)

CREATE TABLE JACKED_CARS

(

JC_CODE INT PRIMARY KEY CHECK (JC_CODE > 0 AND JC_CODE < 9999),

JC_JACKDATE DATE NOT NULL,

JC_REPORT_DATE DATE NOT NULL,

JC_AM_CODE INT NOT NULL,

FOREIGN KEY (JC_AM_CODE) REFERENCES AM (AM_CODE),

JC_DRIVER_CODE INT NOT NULL,

FOREIGN KEY (JC_DRIVER_CODE) REFERENCES DRIVERS (DRIVER_CODE),

JC_ADDITIONAL CHAR (100),

JC_FOUND BIT,

JC_FOUND_DATE DATE,

)

Приложение Б

ДИАГРАММА БАЗЫ ДАННЫХ

Рис.10.Диаграмма БД

Приложение В

ПРОГРАММА ВВОДА ТЕСТОВЫХ ДАННЫХ

INSERT INTO AM_MARK VALUES (1, 'LADA', 1, 1);

INSERT INTO AM_MARK VALUES (2, 'VW', 2, 2);

INSERT INTO AM_MARK VALUES (3, 'AUDI', 3, 3);

INSERT INTO AM_MARK VALUES (4, 'NISSAN', 4, 4);

INSERT INTO AM_MARK VALUES (5, 'HONDA', 5, 5);

INSERT INTO COUNTRY VALUES (1, 'RUSSIA');

INSERT INTO COUNTRY VALUES (2, 'GERMANY');

INSERT INTO COUNTRY VALUES (3, 'JAPAN');

INSERT INTO COUNTRY VALUES (4, 'FRANCE');

INSERT INTO COUNTRY VALUES (5, 'UK');

INSERT INTO FIRM VALUES (1, 'LADA');

INSERT INTO FIRM VALUES (2, 'VW');

INSERT INTO FIRM VALUES (3, 'AUDI');

INSERT INTO FIRM VALUES (4, 'NISSAN');

INSERT INTO FIRM VALUES (5, 'HONDA');

INSERT INTO DRIVERS VALUES (1, 'IGNATOVA POLINA OLEGOVNA', '01.01.1992', 'AVTONOMNAYA 1-2', 1234567890, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (2, 'BORMOTOVA VIKTORIYA PAVLOVNA', '02.02.1991', 'AKSAKOVA 2-3', 1234567891, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (3, 'MISKO KSENIA ANATOLIEVNA', '03.03.1990', 'AKTIVNAYA 3-4', 1234567892, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (4, 'SERIKOVA ULIYA DMITRIEVNA', '04.04.1989', 'ANTONOVA 4-5', 1234567893, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (5, 'ASHAKINA GALINA SERGEEVNA', '05.05.1988', 'AUSTRINA 5-6', 1234567894, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (6, 'BONDAREVA TATYANA MIHAILOVNA', '06.06.1987', 'BAIDUKOVA 6-7', 1234567895, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (7, 'GRISHIN DMITRY ANDREEVICH', '07.07.1986', 'BAKUNINA 7-8', 1234567896, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (8, 'MARCHENDO ELENA ANDREEVNA', '08.08.1985', 'BATAISKAYA 8-9', 1234567897, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (9, 'MILKOVSKY EVGENY DENISOVICH', '09.09.1984', 'BELINSKOGO 9-10', 1234567898, '123AP1234567', '01.01.2010', 'B');

INSERT INTO DRIVERS VALUES (10, 'KUZNETSOV DENIS SERGEEVICH', '10.10.1983', 'BAUMANA 10-11', 1234567899, '123AP1234567', '01.01.2010', 'B');

INSERT INTO JACKED_CARS VALUES (1, '01.01.2001', '02.01.2001', 1, 1, 'V NOCH NA 29E', 0, NULL);

INSERT INTO JACKED_CARS VALUES (2, '02.02.2002', '03.02.2002', 2, 2, 'SO STOYANKI', 0, NULL);

INSERT INTO JACKED_CARS VALUES (3, '03.03.2003', '04.03.2003', 3, 3, 'SIGNALIZACIYA NE SRABOTALA', 0, NULL);

INSERT INTO JACKED_CARS VALUES (4, '04.04.2004', '05.04.2004', 4, 4, 'UGNANA DVUMYA NEIZVESTNYMI', 0, NULL);

INSERT INTO JACKED_CARS VALUES (5, '05.05.2005', '06.05.2005', 5, 5, 'S POMOSCHYU EVAKUATORA', 0, NULL);

INSERT INTO AM VALUES (1, 1, 1, 'A001AA01', 123456789, 987654321, 789456321, '01.10.1990', '03.10.1990','WHITE');

INSERT INTO AM VALUES (2, 2, 1, 'A002AA01', 123456788, 987654322, 789456322, '02.09.1991', '04.09.1991','BLACK');

INSERT INTO AM VALUES (3, 3, 1, 'A003AA01', 123456787, 987654323, 789456323, '03.08.1992', '05.08.1992','WHITE');

INSERT INTO AM VALUES (4, 4, 2, 'A004AA01', 123456786, 987654324, 789456324, '04.07.1993', '06.07.1993','RED');

INSERT INTO AM VALUES (5, 5, 2, 'A005AA01', 123456785, 987654325, 789456325, '05.06.1994', '07.06.1994','GREEN');

INSERT INTO AM VALUES (6, 6, 2, 'A006AA01', 123456784, 987654326, 789456326, '06.05.1995', '08.05.1995','BLUE');

INSERT INTO AM VALUES (7, 7, 3, 'A007AA01', 123456783, 987654327, 789456327, '07.04.1996', '09.04.1996','GRAY');

INSERT INTO AM VALUES (8, 8, 3, 'A008AA01', 123456782, 987654328, 789456328, '08.03.1997', '10.03.1997','WHITE');

INSERT INTO AM VALUES (9, 9, 3, 'A009AA01', 123456781, 987654329, 789456329, '09.02.1998', '11.02.1998','BLUE');

INSERT INTO AM VALUES (10, 10, 4, 'A010AA01', 123456780, 987654320, 789456320, '10.01.1999', '12.01.1999','GRAY');

Приложение Г

РЕАЛИЗАЦИЯ ЗАПРОСОВ НА ЯЗЫКЕ SQL

1. Показать коды всех белых автомобилей

SELECT AM.AM_CODE "KOD"

FROM AM

WHERE AM.AM_COLOR='WHITE'

Рис. 11

2. Показать все немецкие марки автомобилей

SELECT AM_MARK.MARK_NAME 'MAPKA'

FROM AM_MARK

WHERE AM_MARK.COUNTRY_CODE LIKE 2

Рис. 12

3. Показать всех водителей с фамилией Гришин (GRISHIN)

SELECT DRIVERS.DRIVER_FIO "FIO"

FROM DRIVERS

WHERE DRIVERS.DRIVER_FIO LIKE 'GRISHIN%'

Рис. 13

4. Показать информацию по белым автомобилям, владельцами которых являются водители категории В

SELECT S.*

FROM AM S, DRIVERS I

WHERE S.AM_DRIVER_CODE=I.DRIVER_CODE AND I.DRIVER_CATEGORY='B' AND S.AM_COLOR='WHITE'

Рис. 14

5. Показать все угнанные автомобили, выпущенные после 10.10.1991

SELECT S.*, I.AM_BIRTHDATE "BbIIIYCK"

FROM JACKED_CARS S, AM I

WHERE S.JC_CODE=I.AM_CODE AND I.AM_REGISTRATION_DATE>'10.10.1991'

Рис. 15

6. Показать все угнанные после 01.01.2003 автомобили

SELECT S.*

FROM JACKED_CARS S, AM I

WHERE S.JC_CODE=I.AM_CODE AND S.JC_JACKDATE>'01.01.2003'

Рис. 16

7. Показать все угнанные после 01.01.2003 белые автомобили

SELECT S.*

FROM JACKED_CARS S, AM I

WHERE S.JC_CODE=I.AM_CODE AND S.JC_JACKDATE>'01.01.2003' AND I.AM_COLOR='WHITE'

Рис. 17

8. Показать все угнанные у водителей категории В после 01.01.2003 автомобили

SELECT S.*

FROM JACKED_CARS S,AM I, DRIVERS O

WHERE S.JC_AM_CODE=I.AM_CODE AND S.JC_JACKDATE>'01.01.2003' AND I.AM_DRIVER_CODE=O.DRIVER_CODE AND O.DRIVER_CATEGORY='B'

Рис. 18

9. Показать всех водителей AUDI

SELECT D.*

FROM DRIVERS D, AM A

WHERE D.DRIVER_CODE=A.AM_DRIVER_CODE AND A.AM_MARK_CODE=3

Рис. 19

10. Показать всех водителей белых AUDI

SELECT D.*

FROM DRIVERS D, AM A

WHERE D.DRIVER_CODE=A.AM_DRIVER_CODE AND A.AM_MARK_CODE=3 AND A.AM_COLOR = 'WHITE'

Рис. 20

Размещено на Allbest.ru


Подобные документы

  • Программные средства для реализации базы данных и серверной части информационной системы "Учета технического обслуживания станков" средствами СУБД Microsoft SQL Server 2008. Разработка триггеров для поддержки сложных ограничений целостности в базе данных.

    курсовая работа [768,3 K], добавлен 01.02.2013

  • Реализация базы данных и серверной части информационной системы склада средствами СУБД Microsoft SQL Server. Анализ предметной области, информационных задач, пользовательской системы. Программа реализации проекта. Выработка требований и ограничений.

    курсовая работа [2,4 M], добавлен 15.11.2015

  • Разработка базы данных для информационной поддержки деятельности аптеки с целью автоматизированного ведения данных о лекарствах аптеки. Проектирование схемы базы данных с помощью средства разработки структуры базы данных Microsoft SQL Server 2008.

    курсовая работа [3,6 M], добавлен 18.06.2012

  • Программные продукты, используемые при проектировании базы данных. Разработка базы данных "Библиотека" с использование программного проекта Microsoft SQL Server. Создание таблиц, триггеров, пользователей, репликации, запросов, функций, процедур.

    курсовая работа [897,6 K], добавлен 21.11.2011

  • Разработка базы данных средствами СУБД Microsoft SQL Server 2008. Исследование понятия первичного и внешнего ключа. Реляционные отношения между таблицами базы данных. Ссылочная целостность и каскадные воздействия. Проектирование запросов и триггеров.

    курсовая работа [1,0 M], добавлен 27.05.2015

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

    презентация [364,2 K], добавлен 22.10.2013

  • Определение функциональных зависимостей. Разработка структуры базы данных. Организация запросов к базе данных. Использование триггеров для поддержки данных в актуальном состоянии. Разработка хранимых процедур и функций. Ограничения ведения базы данных.

    курсовая работа [113,2 K], добавлен 17.06.2014

  • Системный анализ и анализ требований к базе данных. Особенности создания отчетов, запросов и форм в Visual Studio 2012. Программная реализация ER-диаграммы. Создание инфологической, логической и физической модели базы данных. Генерация ее в SQL Server.

    курсовая работа [1,0 M], добавлен 22.11.2012

  • Реализация приложения "Книжный магазин" средствами систем управления базами данных. Проектирование структуры базы данных, определение сущности и атрибутов. Логическое проектирование базы данных и реализация базы данных в СУБД Microsoft Office Access.

    курсовая работа [7,8 M], добавлен 13.02.2023

  • Типы данных языка SQL, определенные стандартом ISO. Средства поддержки целостности данных. Введение ограничений для доменов. Разработка рабочего проекта для автосалона. Построение информационной схемы базы. Создание форм для занесения данных в таблицы.

    курсовая работа [2,5 M], добавлен 29.01.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.