sql >> Databáze >  >> RDS >> Mysql

Chcete omezit hodnotu pole MySQL na určitý rozsah (desítkové hodnoty)

Kontrolní omezení v MySQL můžete simulovat pomocí spouštěčů.

Pokud například chcete vynutit uložení všech hodnot větších než 1,00 jako 1,00, můžete tak učinit pomocí 2 spouštěčů, jako je tento:

DELIMITER $$

DROP TRIGGER IF EXISTS tr_b_ins_relationships $$

CREATE TRIGGER tr_b_ins_relationships BEFORE INSERT ON relationships FOR EACH ROW BEGIN
  IF new.relationship_level > 1
  THEN
    SET new.relationship_level = 1;
  END IF;
END $$

DELIMITER ;


DELIMITER $$

DROP TRIGGER IF EXISTS tr_b_upd_relationships $$

CREATE TRIGGER tr_b_upd_relationships BEFORE UPDATE ON relationships FOR EACH ROW BEGIN
  IF new.relationship_level > 1
  THEN
    SET new.relationship_level = 1;
  END IF;
END $$

DELIMITER ;


  1. Funkce GREATEST() v Oracle

  2. Jak uniknout % z dotazu python mysql

  3. Replikace Londiste s PostgreSQL 9.0

  4. Pomocí OBJECTPROPERTY() zjistěte, zda tabulka má výchozí omezení na serveru SQL Server