Файл: Базы данных Учебное пособие.pdf

Добавлен: 28.11.2018

Просмотров: 6904

Скачиваний: 46

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

131 

Сущность  –  произвольный  объект  реального  мира,  данные  о  котором 

необходимо хранить в базе данных. 

Угроза безопасности БД – действие или событие, которое может приве-

сти  к  нарушению  доступности,  достоверности,  целостности  или  конфи-
денциальности информации в БД. 

 

 

 


background image

132 

Приложение А SQL-код для создания базы данных 

CREATE DATABASE IF NOT EXISTS `mydb`; 
USE `mydb` ; 
- --------------------------------------------------- 
-- Table `mydb`.`Покупатель` 
-- -------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Покупатель` ; 
CREATE TABLE IF NOT EXISTS `mydb`.`Покупатель` ( 
 `НомерП` INT NOT NULL , 
 `ФИО` TEXT NULL , 
 `Телефон` INT NULL , 
 `Адрес` TEXT NULL , 
 PRIMARY KEY (`НомерП`) ) 
ENGINE = InnoDB; 
-- -------------------------------------------------- 
-- Table `mydb`.`Накладная` 
-- -------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Накладная` ; 
CREATE TABLE IF NOT EXISTS `mydb`.`Накладная` ( 
 `НомерН` INT NOT NULL , 
 `НомерП` INT NOT NULL , 
 `Дата` DATE NULL , 
 `Доставка` TEXT NULL , 
 PRIMARY KEY (`НомерН`) , 
 INDEX `fk_Накладная_Покупатель1` (`НомерП` ASC) , 
 CONSTRAINT `fk_Накладная_Покупатель1` 
 FOREIGN KEY (`НомерП` ) 
 REFERENCES `mydb`.`Покупатель` (`НомерП` ) 
 ON DELETE NO ACTION 
 ON UPDATE NO ACTION) 
ENGINE = InnoDB; 
-- -------------------------------------------------- 
-- Table `mydb`.`Товар` 
-- -------------------------------------------------- 


background image

133 

DROP TABLE IF EXISTS `mydb`.`Товар` ; 
CREATE TABLE IF NOT EXISTS `mydb`.`Товар` ( 
 `НомерТ` INT NOT NULL , 
 `Наименование` TEXT NULL , 
 `Категория` TEXT NULL , 
 `Цена` INT NULL , 
 PRIMARY KEY (`НомерТ`) ) 
ENGINE = InnoDB; 
-- -------------------------------------------------- 
-- Table `mydb`.`ТоварыНакладной` 
-- -------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`ТоварыНакладной` ; 
CREATE TABLE IF NOT EXISTS `mydb`.`ТоварыНакладной` ( 
 `НомерН` INT NOT NULL , 
 `НомерТ` INT NOT NULL , 
 `Цена` INT NULL , 
 `Кол-во` INT NULL , 
 PRIMARY KEY (`НомерН`, `НомерТ`) , 
 INDEX  `fk_Накладная_has_Товар_Накладная1`  (`НомерН` 
ASC) , 
 INDEX 

`fk_Накладная_has_Товар_Товар1` 

(`НомерТ`  

ASC) , 
 CONSTRAINT `fk_Накладная_has_Товар_Накладная1` 
 FOREIGN KEY (`НомерН` ) 
 REFERENCES `mydb`.`Накладная` (`НомерН` ) 
 ON DELETE NO ACTION 
 ON UPDATE NO ACTION, 
 CONSTRAINT `fk_Накладная_has_Товар_Товар1` 
 FOREIGN KEY (`НомерТ` ) 
 REFERENCES `mydb`.`Товар` (`НомерТ` ) 
 ON DELETE NO ACTION 
 ON UPDATE NO ACTION) 
ENGINE = InnoDB;