Ho un database in cui il vecchio codice piace inserire '0000-00-00' nelle colonne Date e DateTime invece di una data reale. Quindi ho le seguenti due domande:Blocco '0000-00-00' da MySQL Data Fields
- C'è qualcosa che potrei fare a livello di db per bloccare questo? So che posso impostare una colonna per essere non nullo, ma non sembra che stia bloccando questi valori zero.
- Qual è il modo migliore per rilevare i valori zero esistenti nei campi data? Ho circa un centinaio di tabelle con 2-3 colonne di date ciascuna e non voglio interrogarle singolarmente.
ollowup:
Il predefinito è già impostato su null. Molto tempo fa, il valore predefinito era '0000-00-00'. Alcuni codici posizionano ancora esplicitamente "0000-00-00". Preferirei forzare quel codice per generare un errore in modo da poterlo isolare e rimuovere.
Non posso credere che MySQL non supporti i vincoli CHECK. Stavo per postarlo come risposta, non è un'opzione. Sempre più, capisco l'odio di MySQL. Mai usato da solo. – Dave