1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
|
CREATE SCHEMA IF NOT EXISTS `stu_db` DEFAULT CHARACTER SET utf8 ;
USE `stu_db` ;
-- -----------------------------------------------------
-- Table `stu_db`.`eleve`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `stu_db`.`eleve` (
`eleve_id` INT NOT NULL AUTO_INCREMENT,
`nom` VARCHAR(45) NULL,
`prenom` VARCHAR(45) NULL,
`date_naissance` DATE NULL,
`lieu_naissance` VARCHAR(45) NULL,
PRIMARY KEY (`eleve_id`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `stu_db`.`examen`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `stu_db`.`examen` (
`examen_id` INT NOT NULL AUTO_INCREMENT,
`libelle` VARCHAR(45) NULL,
PRIMARY KEY (`examen_id`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `stu_db`.`presenter`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `stu_db`.`presenter` (
`eleve_id` INT NOT NULL,
`examen_id` INT NOT NULL,
`date_pr` DATE NOT NULL,
`num_dossier` INT NOT NULL,
`moyenne` DECIMAL(5,2) NULL,
`mention` CHAR(03) NULL,
PRIMARY KEY (`eleve_id`, `examen_id`, `date_pr`),
CONSTRAINT `fk_presenter_eleve1`
FOREIGN KEY (`eleve_id`)
REFERENCES `stu_db`.`eleve` (`eleve_id`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `fk_presenter_examen1`
FOREIGN KEY (`examen_id`)
REFERENCES `stu_db`.`examen` (`examen_id`)
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;
CREATE INDEX `fk_eleve_has_examen_examen1_idx` ON `stu_db`.`presenter` (`examen_id` ASC);
CREATE INDEX `fk_eleve_has_examen_eleve_idx` ON `stu_db`.`presenter` (`eleve_id` ASC);
-- -----------------------------------------------------
-- Table `stu_db`.`epreuve`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `stu_db`.`epreuve` (
`epreuve_id` INT NOT NULL AUTO_INCREMENT,
`examen_id` INT NOT NULL,
`matiere` VARCHAR(45) NULL,
`coefficient` DECIMAL(5,2) NULL,
PRIMARY KEY (`epreuve_id`, `examen_id`),
CONSTRAINT `fk_epreuve_examen1`
FOREIGN KEY (`examen_id`)
REFERENCES `stu_db`.`examen` (`examen_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
CREATE INDEX `fk_epreuve_examen1_idx` ON `stu_db`.`epreuve` (`examen_id` ASC);
-- -----------------------------------------------------
-- Table `stu_db`.`noter`
-- -----------------------------------------------------
`eleve_id` INT NOT NULL,
`examen_id` INT NOT NULL,
`epreuve_id` INT NOT NULL,
`date_pr` DATE NOT NULL,
`note` DECIMAL(5,2) NOT NULL,
PRIMARY KEY (`eleve_id`, `examen_id`, `epreuve_id`, date_pr`),
CONSTRAINT `fk_noter_presenter1`
FOREIGN KEY (`eleve_id`, `examen_id`, `date_pr`)
REFERENCES `stu_db`.`presenter` (`eleve_id`, `examen_id`, `date_pr`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `fk_presenter_epreuve1`
FOREIGN KEY (`examen_id`, `epreuve_id`)
REFERENCES `stu_db`.`epreuve` (`examen_id`, `epreuve_id`)
ON DELETE CASCADE
ON UPDATE CASCADE
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; |
Partager