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

Omezte hodnotu datového typu MySQL na určitý rozsah (nejlépe ne ENUM)

Můžete vytvořit tabulku hodnot povolených hlasů a přidat cizí klíč do tabulky hlasů, takže když se pokusíte vložit hlas s hodnotou user_vote jinou, než která existuje ve vaší tabulce allow_votes, zobrazí se chyba selhání omezení:

CREATE TABLE allowed_votes (
  vote_rank TINYINT UNSIGNED NOT NULL,
  PRIMARY KEY (vote_rank)
) ENGINE = InnoDB;

INSERT INTO allowed_votes( vote_rank ) VALUES(1),(2),(3),(4),(5),(6),(7),(8),(9),(10);

ALTER TABLE votes
ADD FOREIGN KEY (user_vote) REFERENCES allowed_votes (vote_rank);



  1. Kdy *ne* použít připravené výpisy?

  2. Jak vytvořit a naplnit tabulku v jediném kroku jako součást operace importu CSV?

  3. Nepodařilo se připojit k mysql na 127.0.0.1:3306 s uživatelem root přístup odepřen pro uživatele 'root'@'localhost' (pomocí hesla:YES)

  4. Získávání posledního záznamu z mysql