- Home
- Categorie
- Coding e Sistemistica
- Coding
- Problema CHECK nella Create Table
-
Problema CHECK nella Create Table
Buondì!!
Ho un grosso problema nell'inserire il vincolo di check nella creazione della tabella. Ponendo di voler costruire una semplice tabella a 3 campi, il primo costituito da una stringa e i rimanenti costituiti da due date che delimitano un intervallo, devo fare in modo che la seconda data sia successiva alla prima. Ql è la corretta sintassi da usare? La query che inserisco io non mi dà alcun errore ma posso inserire qualsiasi dato perchè il db non effettua alcun controllo.. ;-(CREATE TABLE intervallo
(nome VARCHAR(10) NOT NULL,
data1 DATE,
data2 DATE,
PRIMARY KEY(nome),
CONSTRAINT ctr CHECK(data1 < data2))
ENGINE = InnoDB;Elisa
-
io ho usato una serie di comandi php per fare una verifica simile... credo che con qualche cambiamento possa funzionare anche per il tuo caso!
$primaData = strtotime($primaData);
$secondaData = strtotime($secondaData);
if ($primaData<$secondaData){
//inserisci
}
else{
//dai errore
}
-
Grazie mille, ma volevo sfruttare quella potenzialità per delegare + lavoro al db e non pensarci + ogni volta che ci accedo tramite php.. Sui manuali è prevista l'opzione Check e non capisco perchè non funzioni..