Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : [mysql] Vider une table en fonction d'une date [ MySQL / Requêtes ] (sniktwo)

mardi 23 mai 2006 à 14:41:58 | [mysql] Vider une table en fonction d'une date

sniktwo

Bonjour tous le monde, je voudrais vider chaque table de ma base (a part client et serveur) en fonction d'une date récupéré dans un XML. Alors j'ai fais ceci :

//On récupère le nom de toutes les tables
$query = "SHOW TABLES FROM nombdd";
$result = mysql_query($query) or die('<br><br> ==>> Erreur SQL :'.$query.'<br>'.mysql_error());
//On parcours chaque table
while ($row = mysql_fetch_row($result))

 //Si la table n'est pas client ou serveur
 if( ($row[0]!= 'client') && ($row[0]!= 'serveur') )
 {
  //On vide les enregistrements de la table supérieur à 15jours
  $query2 = "DELETE FROM ".$row[0]." WHERE SUBDATE('".$dateModif."', INTERVAL 15 DAY)";
  //$query2 = "DELETE FROM ".$row[0]." WHERE (TO_DAYS(NOW()) - TO_DAYS('".$dateModif."')) > 15";
  $result2 = mysql_query($query2) or die('<br><br> ==>> Erreur SQL :'.$query2.'<br>'.mysql_error());
  echo "=> $row[0] vidée...<br>";
 }
}

Comme vous voyez, j'ai essayé deux méthodes . Les deux me vide bien mes tables mais quel que soit la date...On est le 2006-05-23, et ça ma viré un enregistrement ayant dans le champ Date 2006-05-18, pourtant ça daté bien de moins de 15jours.
Si vous avez une réponse a mon probleme, faites moi signe !!!!

PS : je précise que les champs des tables que je veux vidé sont bien de type date et la date récupéré dans le xml est bien sous la forme AAAA-MM-JJ

Merciiiiiiiii ^^

mardi 23 mai 2006 à 15:34:30 | Re : [mysql] Vider une table en fonction d'une date

sniktwo

Réponse acceptée !
OK je suis trop laid, j'ai trouvé tous seul, un truc con j'avais oublié de mettre le champ date :

$query2 = "DELETE FROM ".$row[0]." WHERE `Date` < SUBDATE('".$dateModif."', INTERVAL 15 DAY)";

Je suis trop bidon ^^

mardi 23 mai 2006 à 15:57:09 | Re : [mysql] Vider une table en fonction d'une date

aieeeuuuuu

salut

je ne vois pas ou tu compare ta date avec ton champs date.

en fait je ne vois pas ou tu appelle ton champs date. si j'ai bien compris ton code, ton $dateModif est ta date de référence, et donc dans ta requete tu compare la date du jour (NOW) a ta date de reference. donc le resultat est toujours vrai, et il supprime tous les enregistrements.

Je pense qu'il faut donc que tu rajoute 15 jour a ta date de reference, et que tu supprimer tous les enregistremenents dont la date est inferieure



 


mardi 23 mai 2006 à 16:08:54 | Re : [mysql] Vider une table en fonction d'une date

aieeeuuuuu

mouarfff, j'etais en trian de te repondre justement

:)

mardi 23 mai 2006 à 16:10:51 | Re : [mysql] Vider une table en fonction d'une date

sniktwo

lol j'allais répondre, j'comprenais pas ton message par rapport a ma derniere réponse ^^ ça va trop vite internet de nos jours :p

mardi 23 mai 2006 à 17:17:33 | Re : [mysql] Vider une table en fonction d'une date

aieeeuuuuu

bah ouais, plus vite que moi en tout cas :)

nan en fait j'ai commencé a repondre, puis j'ai du faire autre chose, et j'ai repris plus tard, mais comme j'ai pas rafraichit ma fenetre, je n'ai pas vu ta reponse...

au moins comme ca on est bien sur :)



Cette discussion est classé dans : date, table, mysql, query, row


Répondre à ce message

Sujets en rapport avec ce message

[sql] Vider une table en fonction d'une date [ par sniktwo ] Bonjour, je travaille sur mysql et je veux parcourir chaque table (a part client et serveur) afin de supprimer les enregistrements supérieur a 15 jour Insertion d'une variable dans table sql [ par jlmzk ] Salut à tous.Voila c'est tout simple, j'ai une variable $bc dont la valeur peut être par exemple AB01Si je fais un echo $bc; j'ai bien AB01 qui s'affi creation des tables avec mysql; please aidez moi [ par developpementinformatique ] Bonjour, voila , je veux une aide si possibel pour creer ses tables avec mysql j'ai une table document(Numrefernce(unique),designation,expediteur,dest insert into/select [ par boubou2412 ] salut tout le monde,je suis certaine qu'il ya une faute dans ma requete j'aimerais bien savoir comment la corriger, bon j'ai un table X qui contient p CREATE TABLE ERREUR [ par didygwatinik ] Bonjour, Voici le create table de ma table notertexte : $liendb=mysql_connect("localhost","root","");mysql_select_db("jeunestalents");$sql="CREATE TA MySQL information_schema [ par Teclis01 ] Bonsoir,M'interessant pas mal à MySQL pour l'instant, j'aimerais comprendre un peu mieux certains mécanismes ^_^J'ai donc commencé a triturer la Db in 123,45 devient 123,00 dans BdD mysql [ par qeumarh ] salut, voila mon probleme. j'ai crée une table "classement" sous mysql (phpmyadmin), qui contient des classes dont certaines contiennent des nombres d Comparaison de date!! [ par pascallgagnon ] Bonjout tlm!!Voilà, j'ai une Bd access avec une table étudiant, une table cours et une table résultat qui est une table d'intersection entre les 2.Je Comparaison de date!! [ par pascallgagnon ] Bonjout tlm!!Voilà, j'ai une Bd access avec une table étudiant, une table cours et une table résultat qui est une table d'intersection entre les 2.Je MySQL jonction/fusion/union vers une table tierce [ par pcerne ] Bonjour, Petit schéma explicatif : J'ai une table A id int nom_id char(30) prenom_id char(30) une table B id


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.