Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Baptiste Mazon
ctobini writes:
J'insère des données dans une table MySQL 5.0 contenant entre autre un champ `date` de type date (et oui... :-) ).
Mon code actuellement pour insérer la date est :
my $curdate; my $sth_curdate = $dbh->prepare('SELECT CURDATE()'); $sth_curdate->execute; while(my @r = $sth_curdate->fetchrow_array) { $curdate = $r[0] } my $sth_ffreeze = $dbh->do( sprintf "INSERT INTO freeze (freeze_name, date) VALUES (%s, %s)", $dbh->quote('proto'), $dbh->quote($curdate) );
Y aurait-il un moyen plus simple à mettre directement en argument du sprintf (comme un $dbh->func() ou autre) ?
On dérive de Perl, mais est-ce qu'il n'est as possible en MySQL d'insérer CURDATE() directement, sans avoir à passer par un SELECT préalable? Ou peut-être est-ce voulu, pour garantir que la date insérée soit la même pour tous les enregistrements?
Quoi qu'il en soit, j'aurais plutôt utilisé la requête immédiate (type do) pour la requête unique, et la requête préparée pour celle qui est répétée. Ça permettrait d'utiliser des placeholders et de laisser le sale boulot de quoting au bind de DBI.
ctobini <ctemp2@free.fr> writes:
J'insère des données dans une table MySQL 5.0 contenant entre autre un
champ `date` de type date (et oui... :-) ).
Mon code actuellement pour insérer la date est :
my $curdate;
my $sth_curdate = $dbh->prepare('SELECT CURDATE()');
$sth_curdate->execute;
while(my @r = $sth_curdate->fetchrow_array) { $curdate = $r[0] }
my $sth_ffreeze = $dbh->do( sprintf "INSERT INTO freeze (freeze_name,
date) VALUES (%s, %s)", $dbh->quote('proto'), $dbh->quote($curdate)
);
Y aurait-il un moyen plus simple à mettre directement en argument du
sprintf (comme un $dbh->func() ou autre) ?
On dérive de Perl, mais est-ce qu'il n'est as possible en MySQL
d'insérer CURDATE() directement, sans avoir à passer par un SELECT
préalable? Ou peut-être est-ce voulu, pour garantir que la date
insérée soit la même pour tous les enregistrements?
Quoi qu'il en soit, j'aurais plutôt utilisé la requête immédiate (type
do) pour la requête unique, et la requête préparée pour celle qui est
répétée. Ça permettrait d'utiliser des placeholders et de laisser le
sale boulot de quoting au bind de DBI.
J'insère des données dans une table MySQL 5.0 contenant entre autre un champ `date` de type date (et oui... :-) ).
Mon code actuellement pour insérer la date est :
my $curdate; my $sth_curdate = $dbh->prepare('SELECT CURDATE()'); $sth_curdate->execute; while(my @r = $sth_curdate->fetchrow_array) { $curdate = $r[0] } my $sth_ffreeze = $dbh->do( sprintf "INSERT INTO freeze (freeze_name, date) VALUES (%s, %s)", $dbh->quote('proto'), $dbh->quote($curdate) );
Y aurait-il un moyen plus simple à mettre directement en argument du sprintf (comme un $dbh->func() ou autre) ?
On dérive de Perl, mais est-ce qu'il n'est as possible en MySQL d'insérer CURDATE() directement, sans avoir à passer par un SELECT préalable? Ou peut-être est-ce voulu, pour garantir que la date insérée soit la même pour tous les enregistrements?
Quoi qu'il en soit, j'aurais plutôt utilisé la requête immédiate (type do) pour la requête unique, et la requête préparée pour celle qui est répétée. Ça permettrait d'utiliser des placeholders et de laisser le sale boulot de quoting au bind de DBI.
Lliane
Bonjour,
J'insère des données dans une table MySQL 5.0 contenant entre autre un champ `date` de type date (et oui... :-) ).
Mon code actuellement pour insérer la date est :
my $curdate; my $sth_curdate = $dbh->prepare('SELECT CURDATE()'); $sth_curdate->execute; while(my @r = $sth_curdate->fetchrow_array) { $curdate = $r[0] } my $sth_ffreeze = $dbh->do( sprintf "INSERT INTO freeze (freeze_name, date) VALUES (%s, %s)", $dbh->quote('proto'), $dbh->quote($curdate) );
Y aurait-il un moyen plus simple à mettre directement en argument du sprintf (comme un $dbh->func() ou autre) ?
En vous remerciant,
C. Tobini
C'est la date actuelle que tu veux insérer?
-- How are you gentlemen? All your base are belong to us. -=> Depiets Simon || EPITA || Promo 2011 || Spé B2 <=- Lliane.com
Bonjour,
J'insère des données dans une table MySQL 5.0 contenant entre autre un
champ `date` de type date (et oui... :-) ).
Mon code actuellement pour insérer la date est :
my $curdate;
my $sth_curdate = $dbh->prepare('SELECT CURDATE()');
$sth_curdate->execute;
while(my @r = $sth_curdate->fetchrow_array) { $curdate = $r[0] }
my $sth_ffreeze = $dbh->do( sprintf "INSERT INTO freeze (freeze_name,
date) VALUES (%s, %s)", $dbh->quote('proto'), $dbh->quote($curdate) );
Y aurait-il un moyen plus simple à mettre directement en argument du
sprintf (comme un $dbh->func() ou autre) ?
En vous remerciant,
C. Tobini
C'est la date actuelle que tu veux insérer?
--
How are you gentlemen? All your base are belong to us.
-=> Depiets Simon || EPITA || Promo 2011 || Spé B2 <=-
Lliane.com