sql >> Database teknologi >  >> RDS >> Mysql

Range begrænsning numerisk MySQL kolonne:hvordan?

Hvis du bruger InnoDB som Engine sir, kan du tjek dette ud. Som du kan se, kan du oprette en ny tabel, der indeholder dine grænseværdier og reference til dit felt (som fremmednøgle), det er nu så håndhæve din begrænsning med referenceintegritet.

OPDATERING

prøv dette:

   CREATE TABLE allowed_val(
      limiting_val DOUBLE NOT NULL,
      PRIMARY KEY (limiting_val )
    ) ENGINE = InnoDB;

INSERT INTO allowed_val( limiting_val) VALUES(0),(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),..(1000);

ALTER TABLE spectrumdata
ADD FOREIGN KEY (wavelength) REFERENCES allowed_val(limiting_val);

Men du skal også ændre spectrumdata bølgelængde til NOT NULL til DEFAULT =0; til at håndtere null-værdier.




  1. Forkert strengværdi:'\xEF\xBF\xBD' for kolonne

  2. Indsamlingsmetode:LIMIT-funktion i Oracle-databasen

  3. Send en variabel ind i en trigger

  4. OVER-klausul i Oracle