Salve a tutti,
il mio programma memorizza i campi data vuoti come '0000-00-00'. Dopo gli aggiornamenti software ho iniziato ad avere il seguente errore MySql: Incorrect date value for ... quando tenta di salvare il valore '0000-00-00'.
Come posso risolvere il problema?
Grazie!
Mysql salvare campo data vuoto.
Moderatori:
Paolino,
fairyvilje
14 messaggi
• Pagina 1 di 2 • 1, 2
1
voti
Nella gestione di un database, è considerato obbligatorio l'utilizzo di un valore NULL univocamente definito (SQL ne definisce uno, per la cronaca) e non legato ad alcun dominio per identificare i campi vuoti; è invece fortemente scoraggiato (anzi, per simmetria direi vietato) l'utilizzo di un valore del dominio come identificativo per i campi vuoti.
-

rugweri
5.948 2 8 13 - CRU - Account cancellato su Richiesta utente
- Messaggi: 1366
- Iscritto il: 25 nov 2016, 18:46
0
voti
La tabella è questa:
CREATE TABLE `persona` (
`idpers` int(11) NOT NULL,
`lastname` varchar(200) NOT NULL,
`firstname` varchar(200) DEFAULT NULL,
`borndate` date DEFAULT NULL,
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
L' utente può scegliere se o non inserire la data di nascita.
Tutti i campi data vuoti, anche in altre tabelle sono stati sempre salvati come '0000-00-00'.
CREATE TABLE `persona` (
`idpers` int(11) NOT NULL,
`lastname` varchar(200) NOT NULL,
`firstname` varchar(200) DEFAULT NULL,
`borndate` date DEFAULT NULL,
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
L' utente può scegliere se o non inserire la data di nascita.
Tutti i campi data vuoti, anche in altre tabelle sono stati sempre salvati come '0000-00-00'.
0
voti
Significherebbe utilizzare utilizzare due differenti query a seconda del caso data inserita oppure no. Comunque avrei lo stesso il problema nella query di update dove dovrà necessariamente essere presente il campo borndate.
0
voti
Daniele78 ha scritto:Il problema è che le query vengono gestite con PDO per cui devo necessariamente passare una stringa.
Se PDO (che non conosco, ma essendo un'estensione per PHP - sull'infima qualità del quale quale personaggi ben più qualificati di me si sono abbondantemente espressi - temo il peggio) ti richiede per forza una stringa, PDO viola una delle regole di base che si insegnano fin dal primo contatto con un database a tutti gli studenti di materie informatiche; segue che PDO risulta pertanto inutilizzabile e va, se possibile, abolito.
Daniele78 ha scritto:Significherebbe utilizzare utilizzare due differenti query a seconda del caso data inserita oppure no. Comunque avrei lo stesso il problema nella query di update dove dovrà necessariamente essere presente il campo borndate.
Dovresti scrivere due query (cosa che mi suona un po' strana, comunque)? Allora mi sa che ti conviene iniziare
-

rugweri
5.948 2 8 13 - CRU - Account cancellato su Richiesta utente
- Messaggi: 1366
- Iscritto il: 25 nov 2016, 18:46
14 messaggi
• Pagina 1 di 2 • 1, 2
Chi c’è in linea
Visitano il forum: Nessuno e 26 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)




