Un peu d'optimisation [MYSQL] - Programmation
Marsh Posté le 15-03-2001 à 14:42:29
1/ le + rapide c bien de faire une seule requête
Et tu n'es pas loin du compte, voici la bonne syntaxe :
mysql_query("UPDATE patatipatata SET nb_mes = nb_mes + 1" );
2/je ne pense pas que ça change vraiment grand chose sf à très grande échelle. Perso c vrai que j'utilise tjs la forme "directe" mysql_query("SELECT..." ); mais bon...
[edit]--Message édité par Zebra3--[/edit]
Marsh Posté le 15-03-2001 à 12:39:22
Voila ce que je voudrais faire:
1)
Je dois faire un compteur pour un forum, qui communique le nombre de messages postes.
Ce que je fais pour l'instant, c'est:
Je prend le nombre de messages postes dans la base de donnees:
$req_nb_mes=mysql_query("SELECT nb_mes FROM patatipatata" );
$row_nb_mes=mysql_fetch_row($req_nb_mes);
$nb_mes=$row_nb_mes[0];
Ensuite, je rajoute un:
$nb_mes+=1;
Apres je mets a jour la bd
Est-ce que c'est possible de faire tout ca en une seule requete, exemple:
mysql_query("UPDATE patatipatata SET nb_mes = quelquechose(nb_mes) + 1" );
2)Est-ce que lors de l'execution, s'il y a bcp de requetes, il vaut mieux ecrire mysql_query("requete" ) directement ou est-ce que le fait de passer par plusieurs variables ne changent pratiquement rien? exemple:
$requete="SELECT machinchose FROM truc WHERE patatipatata";
$result=mysql_query($requete);
(ici, ca fait qu'une ligne en plus, mais sur un nombre de requetes importants, ca fait plus travailler le serveur je suppose non?
[edit]--Message édité par Dragonspirit--[/edit]