创建一个触发器,将一个字段添加到+5并在另一个表中创建总计

时间:2019-02-23 14:40:51

标签: mysql sql

我是新手,对触发器不怎么好,我放置了表格并弄清楚了如何创建此总和

-- Table `databasestreaming`.`tipologiaabbonamento`

CREATE TABLE IF NOT EXISTS `databasestreaming`.`tipologiaabbonamento` (
  `idtipologiaabbonamento` INT NOT NULL AUTO_INCREMENT,
  `piano abbonamento` VARCHAR(45) NULL,
  `dispositivi` VARCHAR(45) NULL,
  `Risoluzione` VARCHAR(45) NULL,
  `Prezzo` INT NULL,
  PRIMARY KEY (`idtipologiaabbonamento`))
ENGINE = InnoDB;

-表databasestreamingabbonamento


CREATE TABLE IF NOT EXISTS `databasestreaming`.`abbonamento` (
  `idabbonamento` INT NOT NULL AUTO_INCREMENT,
  `data attivazione` DATE NULL,
  `data termine` DATE NULL,
  `Sport` ENUM("Si", "No") NULL,
  `cliente_idcliente` INT NOT NULL,
  `tipologiaabbonamento_idtipologiaabbonamento` INT NOT NULL,
  `Prezzo_finale` INT NULL,
  PRIMARY KEY (`idabbonamento`, `cliente_idcliente`, `tipologiaabbonamento_idtipologiaabbonamento`),
  INDEX `fk_abbonamento_cliente_idx` (`cliente_idcliente` ASC) ,
  INDEX `fk_abbonamento_tipologiaabbonamento1_idx` (`tipologiaabbonamento_idtipologiaabbonamento` ASC) ,
  CONSTRAINT `fk_abbonamento_cliente`
    FOREIGN KEY (`cliente_idcliente`)
    REFERENCES `databasestreaming`.`cliente` (`idcliente`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_abbonamento_tipologiaabbonamento1`
    FOREIGN KEY (`tipologiaabbonamento_idtipologiaabbonamento`)
    REFERENCES `databasestreaming`.`tipologiaabbonamento` (`idtipologiaabbonamento`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;

我希望当用户从带有Sport的枚举Si中进行选择时,触发器将从订阅类型(三种订阅类型将选择用户)中获取价格,并将选择的订阅类型添加到最终或不是运动选择,如果是,那么我们加+5;如果不是,则添加+5;在最终价格中,我希望它仅报告所选订阅的价格

0 个答案:

没有答案