Page 1 sur 3
derniere date de modification BD MySQL
Posté : 02 déc. 2006, 21:37
par 2501gigi
Bonjour à tous.
Voila, j'aurais voulus savoir, si il serait possible de savoir la date de la derniere modif de la base de donnée, de la recupérer et de l'afficher?
Merci à tous.
Posté : 02 déc. 2006, 23:58
par Ultim4T0m
Hum, à part en mettant à jour un champ `derniere_modif`dans la table en question à chaque mise à jour, je vois pas trop...
Posté : 03 déc. 2006, 00:38
par DocType
Essaie de scruter le fonctionnement de php my admin, y'a un champ dedans avec "date de dernière modification". Et comme ce n'est que du php, tu dois pouvoir y retrouver la requête

Posté : 03 déc. 2006, 18:34
par 2501gigi
Salut et merci pour vos reponses.
Bon, j'ai chercher, mais je n'arrive pas a trouver ton champ mise a jour, il se trouve ou?
Dans la page accueil d'admin ou dans ma base de donnée.
Merci d'avance
Posté : 03 déc. 2006, 18:38
par jojolapine
exécute cette requête dans phpmyadmin:
et regarde la colonne "Update_time"

Posté : 04 déc. 2006, 18:33
par 2501gigi
Merci jojolapine mais la j'ai encore plus de questions que de réponses.
Car sa m'affiche la date de mise a jour de tous mes enregistrements et non pas de la base de donnée elle seule ,c'est à dire que si je modifi n'importe lequels des enregistrements sa me met juste la Bd a été mise a jour le "" , amoin qu'il y est un moyen de trier la derniere date.
Et la seconde question ,je mais dans mon code de ma page :
comme je mettrais une requete SELECT ?
Et apres je met
echo 'Update_time ' ;
Ou bien il y a une autre maniere.
Posté : 04 déc. 2006, 18:42
par jojolapine
je croit qu'il faut éclaircir certains points...
Tu souhaites avoir la date de dernière modification de quoi au juste?
D'un enregistrement contenu dans une table?
Ou alors la dernière modification d'une table en entière ?
Dans les deux cas il y a une solution, mais précise un petit peu....

Posté : 04 déc. 2006, 19:22
par 2501gigi
désoler pour mettre mal expliqué.
Ce n'est ni d'un enregistrement n'y d'une table c'est de la base de donnée elle meme.
Par exemple j'ai 3 tables que l'on peut remplire de photos par une partie admin sur le site.
et que l'on remplice une des trois ou meme les trois, je veut que sa me dise la date dela derniere modif de ma base de donnée et pas de la tables 1,2 ou 3.
J'espere mettre mieux expliquer.
Posté : 04 déc. 2006, 19:35
par Cyrano
Non : en te lisant sans trop m'être attardé sur ce qui précède, je dirais que ta question est ambigüe : veux-tu savoir la date de la dernière modification de la structure de la base, ou bien quand a eu lieu la dernière modification du contenu de la base sans distinction d'une table particulière ?
Posté : 04 déc. 2006, 21:34
par 2501gigi
la deuxieme solution
Posté : 04 déc. 2006, 22:08
par Cyrano
Selon la version, tu pourrais peut-être essayer d'exploiter les logs de MySQL, sinon, à partir de MySQL 5, tu pourrais créer des triggers qui mettraient à jour une table de log particulière

Posté : 04 déc. 2006, 23:56
par Invité
ou sinon dernière solution qui fonctionnerai sur toutes les version, tu récupères toutes les dernières dates de modifications de tes tables, tu les comparent et retourne la plus récente...
Posté : 05 déc. 2006, 12:38
par 2501gigi
Merci pour vos reponse mais les triggers, les log pour moi c'est du petit chinois.
Et pour ce qui est de recupérer les date de toute les tables je ne vois pas comment on fais.
Posté : 05 déc. 2006, 12:55
par jojolapine
bon tu as bien vu ce que retournai la requête que je t'ai proposé...?
tu vois que pour chaque table, tu as un champ Update_time qui indique la date de dernière modification...
Imaginon que tu récupère cette information sur chaque table (de la manière que n'importe quelle autre requête mysql), tu as entre les mains une série de date au format datetime, ensuite, ilsuffit de les comparées, de choisir la plus récente et de l'afficher comme date de dernière modification du contenu des tables de ta base de donnée
Posté : 05 déc. 2006, 15:25
par 2501gigi
Bon j'ai fais sa mais sa ne marche pas.
<?php
$sql_derniere_modif="SHOW TABLE STATUS FROM `dbsitedebase` ORDER BY Update_time DESC";
$dermodif= mysql_query($sql_derniere_modif);
$datemodifbd= mysql_fetch_array($dermodif);
echo $datemodifbd ;
?>