Ciao.
Come si setta un campo di tipo datetime a now
senza utilizzare in fase di inserimento NOW() ?
![]()
Ciao.
Come si setta un campo di tipo datetime a now
senza utilizzare in fase di inserimento NOW() ?
![]()
Without faith, nothing is possible. With it, nothing is impossible
http://ilwebdifabio.it
Codice PHP:
INSERT INTO nometabella (campo_data) VALUES (Now());
« Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]
Ciao whisher.![]()
Per quanto ne so non è possibile usare una funzione come now() o un'espressione come valore di default.![]()
Ti ringrazio ma fin qui ci arrivoOriginariamente inviato da king size slim
Codice PHP:
INSERT INTO nometabella (campo_data) VALUES (Now());
![]()
vorrei poter inserire quel now() di default
cioè senza specificarlo in inserimento.
![]()
Without faith, nothing is possible. With it, nothing is impossible
http://ilwebdifabio.it
Ciao nicola75ssOriginariamente inviato da nicola75ss
Ciao whisher.![]()
Per quanto ne so non è possibile usare una funzione come now() o un'espressione come valore di default.![]()
![]()
eppure in un thread (se non mi sbaglio) era
venuto fuori un metodo per settare la data
a now di default ma PP non ritrovo il link.
![]()
PS.
Sono ad implementare un TableGateway pattern
(e per i campi di tipo datetime mi servirebbe una cosa
del genere)
PPS
Mah a me sto utilizzo del TableGateway mi pare
si utile ma ben poco elasticoma vediamo
cosa tiro fuori.
Without faith, nothing is possible. With it, nothing is impossible
http://ilwebdifabio.it
beh, lo metti come valore di default nel database...
in questo modo semplicemente eviterai di mettere il campo nell'insert perchè tanto il valore now() verrà settato in automatico da mysql all'atto della creazione del nuovo record.
scusa per prima ma non avevo capito
« Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]
e no per quanto ne so se ad esempioOriginariamente inviato da king size slim
beh, lo metti come valore di default nel database...
in questo modo semplicemente eviterai di mettere il campo nell'insert perchè tanto il valore now() verrà settato in automatico da mysql all'atto della creazione del nuovo record.
metti
not null
default 0000-00-00 00:00:00
se non specifici NOW() o altro
mysql inserisce 0000-00-00 00:00:00
![]()
Without faith, nothing is possible. With it, nothing is impossible
http://ilwebdifabio.it
ecco un'esempio di creazione di una tabella con un campo che si autosetta:
CREATE TABLE IF NOT EXISTS `tbl_products_old` (
`idProduct` smallint(5) unsigned NOT NULL auto_increment,
`cTime` timestamp NOT NULL default CURRENT_TIMESTAMP,
PRIMARY KEY (`idProduct`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;
Non sono sicuro che funzioni anche con un campo datetime ma penso di si.
Ciao
Originariamente inviato da Graboid
ecco un'esempio di creazione di una tabella con un campo che si autosetta:
CREATE TABLE IF NOT EXISTS `tbl_products_old` (
`idProduct` smallint(5) unsigned NOT NULL auto_increment,
`cTime` timestamp NOT NULL default CURRENT_TIMESTAMP,
PRIMARY KEY (`idProduct`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;
Non sono sicuro che funzioni anche con un campo datetime ma penso di si.
Ciao
![]()
No con un campo di tipo datetime non funziona
ma basta accontentarsi
![]()
Without faith, nothing is possible. With it, nothing is impossible
http://ilwebdifabio.it
occhio che quel campo timestamp verra' aggiornato ad ogni update . Se e' quello che vuoi bene, altrimenti *****Originariamente inviato da whisher
![]()
No con un campo di tipo datetime non funziona
ma basta accontentarsi
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.