Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

5сем / files / library4

.sql
Скачиваний:
1
Добавлен:
27.08.2024
Размер:
4.88 Кб
Скачать
-- MySQL Script generated by MySQL Workbench
-- Mon Oct 31 13:28:06 2022
-- Model: New Model Version: 1.0
-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';

-- -----------------------------------------------------
-- Schema my_library
-- -----------------------------------------------------

-- -----------------------------------------------------
-- Schema my_library
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `my_library` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
USE `my_library` ;

-- -----------------------------------------------------
-- Table `my_library`.`Authors`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `my_library`.`Authors` (
`id_author` INT NOT NULL AUTO_INCREMENT,
`author_FIO` VARCHAR(255) NOT NULL,
PRIMARY KEY (`id_author`))
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `my_library`.`Library_place`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `my_library`.`Library_place` (
`id_place` INT NOT NULL AUTO_INCREMENT,
`department` VARCHAR(45) NOT NULL,
`number_shelf` INT NOT NULL,
PRIMARY KEY (`id_place`))
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `my_library`.`Genres`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `my_library`.`Genres` (
`id_genre` INT NOT NULL AUTO_INCREMENT,
`name_genre` VARCHAR(45) NOT NULL,
PRIMARY KEY (`id_genre`))
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `my_library`.`Books`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `my_library`.`Books` (
`id_book` INT NOT NULL AUTO_INCREMENT,
`id_author` INT NOT NULL,
`id_place` INT NOT NULL,
`id_genre` INT NOT NULL,
`title_book` VARCHAR(255) NOT NULL,
`deposit` INT NOT NULL,
`coast_per_day` INT NOT NULL,
PRIMARY KEY (`id_book`),
INDEX `id_author_idx` (`id_author` ASC) VISIBLE,
INDEX `id_place_idx` (`id_place` ASC) VISIBLE,
INDEX `id_genre_idx` (`id_genre` ASC) VISIBLE,
CONSTRAINT `id_author`
FOREIGN KEY (`id_author`)
REFERENCES `my_library`.`Authors` (`id_author`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `id_place`
FOREIGN KEY (`id_place`)
REFERENCES `my_library`.`Library_place` (`id_place`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `id_genre`
FOREIGN KEY (`id_genre`)
REFERENCES `my_library`.`Genres` (`id_genre`)
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `my_library`.`Readers`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `my_library`.`Readers` (
`id_reader` INT NOT NULL,
`reader_FIO` VARCHAR(255) NOT NULL,
`discount_reader` INT NOT NULL,
`telephone` VARCHAR(10) NOT NULL,
PRIMARY KEY (`id_reader`))
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `my_library`.`Employee`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `my_library`.`Employee` (
`id_employee` INT NOT NULL AUTO_INCREMENT,
`employee_FIO` VARCHAR(255) NOT NULL,
`employee_telephone` VARCHAR(10) NOT NULL,
PRIMARY KEY (`id_employee`))
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `my_library`.`Appeals`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `my_library`.`Appeals` (
`id_appeal` INT NOT NULL AUTO_INCREMENT,
`id_book` INT NOT NULL,
`id_reader` INT NOT NULL,
`id_employee` INT NOT NULL,
`issue_date` DATE NOT NULL,
`return_day_expected` DATE NOT NULL,
`return_day` DATE NOT NULL,
`total` INT NULL,
PRIMARY KEY (`id_appeal`),
INDEX `id_book_idx` (`id_book` ASC) VISIBLE,
INDEX `id_reader_idx` (`id_reader` ASC) VISIBLE,
INDEX `id_employee_idx` (`id_employee` ASC) VISIBLE,
CONSTRAINT `id_book`
FOREIGN KEY (`id_book`)
REFERENCES `my_library`.`Books` (`id_book`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `id_reader`
FOREIGN KEY (`id_reader`)
REFERENCES `my_library`.`Readers` (`id_reader`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `id_employee`
FOREIGN KEY (`id_employee`)
REFERENCES `my_library`.`Employee` (`id_employee`)
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;


SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
Соседние файлы в папке files