|
Создание объектов базы данных
1. Создание таблицы «Клиент» (см. Рис.3)
create table client (
client_ID int primary key IDENTITY(1,1) not null,
lastname varchar(20) not null,
firstname varchar(15) not null,
otchestgvo varchar(20) not null,
ser_num_p varchar (10) not null)
Заполнение таблицы «Клиент» (см. Рис. 4) insert into [client]values
('Крылов','Андрей','Юрьевич','0102456789'),
('Рыжов','Сергей','Владимирович','0764509823'),
('Ляпин','Вадим','Юрьевич','8723085617'),
('Черныш','Максим','Николаевич','7294673016'),
('Сальменова','Евгения','Ивановна','6723085648')
Рис.3 Проект таблицы «Клиент»
Рис.4 Таблица «Клиент»
2. Создание таблицы «Марка» (см. Рис. 5) create table brand ( brand_ID int primary key IDENTITY(1,1) not null , nameOfBrand varchar(10) not null)
Заполнение таблицы «Марка» (см. Рис 6) insert into [brand] values ('Citroen'), ('Audi'), ('Honda'), ('Jaguar'),
('Jeep')
Рис.5 Проект таблицы «Марка»
Рис. 6 Таблица «Марка»
3. Создание таблицы «Модель» (см. Рис. 7)
create table model (model_ID int primary key IDENTITY(1,1) not null, nameOfModel varchar(10) not null)
Заполнение таблицы «Модель» (см. Рис 8) insert into [model] values ('c1'),('Q7'),('DS4'),('DS5'),('A1'),('A3'),('Jazz'),('Accord'), (' XJ'),('XK'),('CHEROKEE'),('WRANGLER')
Рис. 7 Проект таблицы «Модель»
Рис.8 Таблица «Модель»
4. Создание таблицы «Цвет» (см. Рис 9) create table color ( color_ID int primary key IDENTITY(1,1) not null, nameOfColor varchar(20) not null)
Заполнение таблицы «Цвет» (см. Рис 10) insert into [color] values ('белый'),('черный'),('серебристый'),('красный'),('желтый'),('голубой'), ('зелено-синий'),('коричневый')
Рис. 9 Проект таблицы «Цвет»
Рис. 10 Таблица «Цвет»
5. Создание таблицы «Сотрудник» (см. Рис 11) create table worker ( worker_ID int primary key IDENTITY(1,1) not null, lastname varchar(20) not null, firstname varchar(15) not null, otchestvo varchar(20) not null)
Заполнение таблицы «Сотрудник» (см. Рис 12) insert into [worker] values ('Стрельцова','Анна','Геннадьевна'), ('Ухватов','Виктор','Владимирович'), ('Масляков','Андрей','Игнатьевич'), ('Первова','Елена','Викторовна'), ('Молодкова','Ирина','Юрьевна'), ('Чумакова','Александра','Николаевна')
Рис.11 Проект таблицы «Сотрудник»
Рис. 12 Таблица «Сотрудник»
6. Создание таблицы «Должность» (см. Рис 13) create table post ( post_ID int primary key IDENTITY(1,1) not null, nameOfPost varchar(50) not null)
Заполнение таблицы « Должность » (см. Рис 14) insert into [post] values ('менеджер по продажам'), ('руководитель отдела продаж'), ('администратор'), ('директор')
Рис. 13 Проект таблицы «Должность»
Рис. 14 Таблица «Должность»
7. Создание таблицы «Страна производитель» (см. Рис. 15) create table contryProd (
contryProd_ID int primary key IDENTITY(1,1) not null, nameOfContry_prod varchar(20) not null)
Заполнение таблицы «Страна производитель» (см. Рис. 16) insert into [contryProd] values ('Франция'),('Гермнания'),('США'),('Япония'),('Великобритания')
Рис.15 Создание таблицы «Страна производитель»
Рис. 16 Таблица «Страна производитель»
8. Создание таблицы «Поставщик» (см. Рис. 17) create table supplier (
supplier_ID int primary key IDENTITY(1,1) not null,
nameOfSupplier varchar(100) not null, address varchar(200) not null, phone varchar(11) not null, INN bigint check (INN like('__________')) not null)
Использование правила
go
CREATE RULE ogrINN
AS
@INN like('____________');
go
Заполнение таблицы «Поставщик» (см. Рис. 18) insert into [supplier] values ('Компания Citroen','г.Москва,ул.Калинина,42','84953345676','6385610759'), ('ЗАО «Крайслер РУС»','г.Москва, Ленинградский пр-т,31А','88001008182','6302649849'), ('ООО "Хонда Мотор РУС"','г.Москва,ул.Селезнева,134','88005557711 ','9365829564'), ('Компания Audi Russia','г.Москва,ул.Польская,109','84953894568','2849673945'), ('Компания Jaguar','г.Москва,ул.Свечникова,23','84953786545','2716452384')
Рис.17 Создание таблицы «Поставщик»
Рис. 18 Таблица «Поставщик»
9. Создание таблицы «Сотрудник-Должность» (см. Рис. 19) create table workerPost ( workerPost_ID int primary key IDENTITY(1,1) not null, worker_ID int foreign key references worker(worker_ID) not null, post_ID int foreign key references post(post_ID) not null)
Заполнение таблицы «Сотрудник-Должность» (см. Рис. 20)
insert into [workerPost] values
('1','1'),('2','1'),('3','1'),('4','2'),('5','3'),('6','4')
Рис.19 Создание таблицы «Сотрудник-Должность»
Рис.20 Таблица «Сотрудник-Должность»
10. Создание таблицы «Автомобиль» (см. Рис. 21)
insert into [car] values ('1','1','1','2','2009','X9F4XXEED45A62881','16MM765092','392000','05.10.12'), ('2','2','2','3','2010','К8F6РXEНD65A75647','77КН504175','1730000','13.11.2012'), ('3','4','9','5','2011','С7F6HJFJD45K45236','56HG563456','1900000','15.11.2012'), ('1','5','11','3','2011','V4G4KUSRJ43H28638','89GF563856','2000000','10.12.2012'), ('1','5','12','4','2011','A9D9GRTYG45K83745','34GY639467','1700000','10.12.2012'), ('3','4','3','7','2010','I9H7HDGRF76M50385','26IK830578','1800000','10.12.2012'), ('1','1','1','8','2011','R9S8GFTEG35K90346','56HG395728','1750000','12.12.2012'), ('2','3','7','7','2011','H7G7FREYF78D67294','78GW927437','1840000','23.12.2012'), ('2','3','8','2','2011','H8K6FWRTL98F23859','67FR205784','1600000','23.12.2012')
Правило go
CREATE RULE ogrGod
AS
@yearOfrelease>2005;
go
Заполнение таблицы «Автомобиль» (см. Рис. 22) insert into [car] values ('1','1','1','2','2009','X9F4XXEED45A62881','16MM765092','392000','05.10.12'), ('2','2','2','3','2010','К8F6РXEНD65A75647','77КН504175','1730000','13.11.2012'), ('3','4','9','5','2011','С7F6HJFJD45K45236','56HG563456','1900000','15.11.2012'), ('1','5','11','3','2011','V4G4KUSRJ43H28638','89GF563856','2000000','10.12.2012'), ('1','5','12','4','2011','A9D9GRTYG45K83745','34GY639467','1700000','10.12.2012'), ('3','4','3','7','2010','I9H7HDGRF76M50385','26IK830578','1800000','10.12.2012'), ('1','1','1','8','2011','R9S8GFTEG35K90346','56HG395728','1750000','12.12.2012'), ('2','3','7','7','2011','H7G7FREYF78D67294','78GW927437','1840000','23.12.2012'), ('2','3','8','2','2011','H8K6FWRTL98F23859','67FR205784','1600000','23.12.2012')
Рис.21 Создание таблицы «Автомобиль»
Рис.22 Таблица «Автомобиль»
11. Создание таблицы «Клиент-Автомобиль» (см. Рис. 23) create table clientCar ( clientCar_ID int primary key IDENTITY(1,1) not null, client_ID int foreign key references client(client_ID)not null, car_ID int foreign key references car(car_ID) not null)
Заполнение таблицы «Клиент-Автомобиль» (см. Рис. 24)
insert into [clientCar] values ('1','1'),('2','2'),('3','4'),('4','3'),('5','6')
Рис.23 Создание таблицы «Клиент-Автомобиль»
Рис.24 Таблица «Клиент-Автомобиль»
12. Создание таблицы «Марка-Страна производитель» (см. Рис. 25) create table brandСontry (
brandСontry_ID int primary key IDENTITY(1,1) not null, brand_ID int foreign key references brand(brand_ID) not null, contryProd_ID int foreign key references contryProd (contryProd_ID) not null)
Заполнение таблицы «Марка-Страна производитель» (см. Рис. 26)
insert into [brandСontry] values
('1','1'),('2','2'),('3','4'),('4','5'),('5','3')
Рис.25 Создание таблицы «Марка-Страна производитель»
Рис.26 Таблица «Марка-Страна производитель»
13. Создание таблицы «Поставщик-Автомобиль» (см. Рис. 27) create table supplierCar ( supplierCar_ID int primary key IDENTITY(1,1) not null, supplier_ID int foreign key references supplier(supplier_ID) not null, car_ID int foreign key references car(car_ID) not null)
Заполнение таблицы «Поставщик-Автомобиль» (см. Рис. 28)
insert into [supplierCar] values ('1','1'),('4','2'),('5','3'),('2','4'),('2','5'),('5','6'),('1','7'),('3','8'),('3','9')
Рис. 27 Создание таблицы «Поставщик-Автомобиль»
Рис. 28 Таблица «Поставщик-Автомобиль»
14. Создание таблицы «Заказ автомобиля» (см. Рис. 29) create table carOrder( carOrder_ID int primary key IDENTITY(1,1) not null, supplier_ID int foreign key references supplier(supplier_ID) not null, car_ID int foreign key references car(car_ID) not null, worker_ID int foreign key references worker(worker_ID) not null, orderDate date not null, orderCost money not null)
Заполнение таблицы «Заказ автомобиля» (см. Рис. 30)
insert into [carOrder] values ('1','1','1','20.09.12','392000'), ('4','2','2','13.10.12','1730000'), ('5','3','3','15.10.12','1900000'), ('2','4','1','10.11.12','2000000'), ('2','5','1','10.11.12','1700000'), ('5','6','3','10.11.12','1800000'), ('1','7','1','11.12.12','1750000'), ('3','8','2','23.11.12','1840000'), ('3','9','2','23.11.12','1600000')
Рис. 29 Создание таблицы «Заказ автомобиля»
Рис.30 Таблица «Заказ автомобиля»
15. Создание таблицы «Продажа автомобиля» (см. Рис. 31) create table carSale( carSale_ID int primary key IDENTITY(1,1) not null, client_ID int foreign key references client(client_ID) not null, car_ID int foreign key references car(car_ID) not null, worker_ID int foreign key references worker(worker_ID) not null, saleDate date not null)
Заполнение таблицы «Продажа автомобиля» (см. Рис. 32)
insert into [carSale] values ('1','1','1','15.10.12'), ('2','2','2','25.11.12'), ('3','4','1','12.12.12'), ('4','3','3','13.12.12'), ('5','6','2','14.12.12')
Рис.31 Создание таблицы «Продажа автомобиля»
Рис.32 Таблица «Продажа автомобиля»
Схема базы данных
Схема базы данных автосалона выглядит следующим образом (см. Рис. 33):
Рис. 33 Схема базы данных автосалона
На данной схеме проведены связи между таблицами базы данных. Благодаря таким связям может быть выполнен любой запрос на поиск нужной информации.
Разработка представлений
1. Выводит таблицу car (Автомобиль) и заполняет в ней столбцы car_ID,nameOfBrand,nameOfModel,nameOfColor,yearOfrelease,vin,num_pts,priceOfCar (см. Рис.34, 35).
go
create VIEW A_car as
select car_ID,nameOfBrand,nameOfModel,nameOfColor,yearOfrelease,vin,num_pts,priceOfCar
from dbo.car,dbo.brand,dbo.model,dbo.color
where dbo.brand.brand_ID=dbo.car.brand_ID and
dbo.model.model_ID=dbo.car.model_ID and
dbo.color.color_ID=dbo.car.color_ID
Рис. 34 Схема и создание таблицы «Автомобиль»
Рис. 35 Таблица «Автомобиль»
2. Выводит таблицу dbo.carOrder (Заказ автомобиля) и заполняет в ней столбцы carOrder_ID,nameOfSupplier,nameOfBrand,nameOfModel,nameOfColor,dbo.worker.lastname,dbo.worker.firstname,dbo.worker.otchestvo,orderDate,orderCost (см. Рис. 36, 37).
go
create VIEW B_carOrder as
select carOrder_ID,nameOfSupplier,nameOfBrand,nameOfModel,nameOfColor,dbo.worker.lastname,dbo.worker.firstname,dbo.worker.otchestvo,orderDate,orderCost
from dbo.brand,dbo.car,dbo.color,dbo.model,dbo.supplier,dbo.carOrder,dbo.worker
where dbo.supplier.supplier_ID=dbo.carOrder.supplier_ID and
dbo.car.car_ID=dbo.carOrder.car_ID and
dbo.brand.brand_ID=dbo.car.brand_ID and
dbo.model.model_ID=dbo.car.model_ID and
dbo.color.color_ID=dbo.car.color_ID and
dbo.worker.worker_ID=dbo.carOrder.worker_ID
Рис. 36 Схема и создание таблицы «Заказ автомобиля»
Рис. 37 Таблица «Заказ автомобиля»
3. Выводит таблицу carSale (Продажа автомобиля) и заполняет в ней столбцы carSale_ID,dbo.client.lastname,dbo.client.firstname,dbo.client.otchestgvo,nameOfBrand,nameOfModel,nameOfColor,yearOfrelease,saleDate
from dbo.brand,dbo.car,dbo.carSale,dbo.client,dbo.color,dbo.model (см. Рис. 38, 39). go
create VIEW C_carSale as
select carSale_ID,dbo.client.lastname,dbo.client.firstname,dbo.client.otchestgvo,nameOfBrand,nameOfModel,nameOfColor,yearOfrelease,saleDate
from dbo.brand,dbo.car,dbo.carSale,dbo.client,dbo.color,dbo.model
where dbo.client.client_ID=dbo.carSale.client_ID and
dbo.car.car_ID=dbo.carSale.car_ID and
dbo.car.brand_ID=dbo.brand.brand_ID and
dbo.car.model_ID=dbo.model.model_ID and
dbo.car.color_ID=dbo.color.color_ID
Рис. 38 Схема и создание таблицы «Продажа автомобиля»
Рис. 39 Таблица «Продажа автомобиля»
Представления данных полезны для поддержания конфиденциальности путем ограничения доступа к определенным частям базы данных и для упрощения выполнения часто используемых запросов.
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|