Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1214 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MYSQL] De la longueur de la requête et son incidence sur les perfs

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MYSQL] De la longueur de la requête et son incidence sur les perfs

n°215433
Sh@rdar
Ex-PhPéteur
Posté le 17-09-2002 à 09:34:30  profilanswer
 

J'au une table que me sert à gérér une arborescence et qui se présente comem ça :
 
| Id | Lvl | Nom_fr | Nom_us | Pere |
 
jusque là rien de très sorcier le champ Pere se rapporte à l'identifiant pour retrouver la relation Parent / Enfant.
 
Dans une autre table, je stocke des articles avec des champs Cat1 et Cat2 qui se rapportent à la catégorie dont ils font partie.
 
Le hic : quand je veux lister tous les articles d'une sous-catégorie et de toutes ses catégories-filles je me retrouve avec 10 ligne de Cat1=X OR Cat2=X etc.. pour chaque catégorie fille. (en fait je parcourt un tableau codé en dur à chque modif de la table pour récupérer les différentes sous-cats, donc une seule requête sur la base)
 
Question 1 : Incidence grave sur les perfs ? (pour l'instant ça n'a pas l'air lent..)
Question 2 : Si réponse positive à la question 1 comment faire plus propre ou plus rapide ?
 
Voici la requête SQL complète au cas où :

Code :
  1. SELECT DISTINCT
  2. Articles.Id,
  3. Articles.Prix,
  4. Articles.Cat1,
  5. Articles.Code_interne,
  6. Articles.Dispo,
  7. Articles.Promo,
  8. Articles.Tva,
  9. DATE_FORMAT(Articles.Date,'%Y-%m-%d') as Date, Desc_articles.Nom_fr,
  10. Desc_articles.Desc_fr,
  11. Fournisseur.Nom as Marque
  12. FROM Articles
  13. LEFT JOIN Desc_articles ON Articles.Id = Desc_articles.Idx
  14. LEFT JOIN Fournisseur ON Fournisseur.Id = Articles.Fournisseur
  15. LEFT JOIN Categories ON Categories.Pere = 1
  16. WHERE (Articles.Cat1=1 OR Articles.Cat2=1 OR Articles.Cat1=3 OR Articles.Cat2=3 OR Articles.Cat1=4 OR Articles.Cat2=4 OR Articles.Cat1=5 OR Articles.Cat2=5 OR Articles.Cat1=6 OR Articles.Cat2=6 OR Articles.Cat1=7 OR Articles.Cat2=7 OR Articles.Cat1=59 OR Articles.Cat2=59 OR Articles.Cat1=60 OR Articles.Cat2=60 OR Articles.Cat1=61 OR Articles.Cat2=61 OR Articles.Cat1=100 OR Articles.Cat2=100 OR Articles.Cat1=101 OR Articles.Cat2=101 OR Articles.Cat1=70 OR Articles.Cat2=70 OR Articles.Cat1=69 OR Articles.Cat2=69 OR Articles.Cat1=68 OR Articles.Cat2=68 OR Articles.Cat1=67 OR Articles.Cat2=67 OR Articles.Cat1=95 OR Articles.Cat2=95 OR Articles.Cat1=90 OR Articles.Cat2=90 OR Articles.Cat1=80 OR Articles.Cat2=80 OR Articles.Cat1=79 OR Articles.Cat2=79 OR Articles.Cat1=77 OR Articles.Cat2=77 OR Articles.Cat1=78 OR Articles.Cat2=78 OR Articles.Cat1=85 OR Articles.Cat2=85 OR Articles.Cat1=71 OR Articles.Cat2=71 OR Articles.Cat1=84 OR Articles.Cat2=84 OR Articles.Cat1=83 OR Articles.Cat2=83 OR Articles.Cat1=82 OR Articles.Cat2=82 OR Articles.Cat1=81 OR Articles.Cat2=81 OR Articles.Cat1=54 OR Articles.Cat2=54 OR Articles.Cat1=55 OR Articles.Cat2=55 OR Articles.Cat1=56 OR Articles.Cat2=56 OR Articles.Cat1=57 OR Articles.Cat2=57 OR Articles.Cat1=86 OR Articles.Cat2=86 OR Articles.Cat1=89 OR Articles.Cat2=89 OR Articles.Cat1=88 OR Articles.Cat2=88 OR Articles.Cat1=87 OR Articles.Cat2=87 OR Articles.Cat1=94 OR Articles.Cat2=94 OR Articles.Cat1=93 OR Articles.Cat2=93 OR Articles.Cat1=91 OR Articles.Cat2=91 OR Articles.Cat1=92 OR Articles.Cat2=92 OR Articles.Cat1=73 OR Articles.Cat2=73 OR Articles.Cat1=74 OR Articles.Cat2=74 OR Articles.Cat1=75 OR Articles.Cat2=75 OR Articles.Cat1=76 OR Articles.Cat2=76 ) ORDER BY Articles.Focus,Articles.Promo DESC LIMIT 2


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
mood
Publicité
Posté le 17-09-2002 à 09:34:30  profilanswer
 

n°215547
Sh@rdar
Ex-PhPéteur
Posté le 17-09-2002 à 12:03:37  profilanswer
 

bon bin y a plus qu'a attendre joce :(


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°215593
irulan
Posté le 17-09-2002 à 13:03:22  profilanswer
 

Et si tu mettais en place une table de paramètre dans laquelle serait stockés les codes de catégorie valides ?
 
Deux avantages :  
1. ta requête serait beaucoup plus simple : tu n'aurais qu'à faire une jointure entre Articles.Cat1/Articles.Cat2 et ton champ avec les codes de la table de param.
 
2. tu n'aurais qu'à changer le contenu de la table de paramètre en cas de MAJ de ta liste de code (la jointure définie précédemment restant valable).

n°215616
--greg--
Posté le 17-09-2002 à 13:53:26  profilanswer
 

irulan a écrit a écrit :

Et si tu mettais en place une table de paramètre dans laquelle serait stockés les codes de catégorie valides ?
 
Deux avantages :  
1. ta requête serait beaucoup plus simple : tu n'aurais qu'à faire une jointure entre Articles.Cat1/Articles.Cat2 et ton champ avec les codes de la table de param.
 
2. tu n'aurais qu'à changer le contenu de la table de paramètre en cas de MAJ de ta liste de code (la jointure définie précédemment restant valable).



+1
et la jointure sera sans doute plus rapide que ton OR OR OR OR


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°215617
--greg--
Posté le 17-09-2002 à 13:54:26  profilanswer
 

sinon tu peux aussi faire WHERE cat1 IN (45, 64, 53) OR cat2 IN (3, 18, 25) ça sera qd meme plus court et lisible :)


Message édité par --greg-- le 17-09-2002 à 13:54:41

---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°215643
Sh@rdar
Ex-PhPéteur
Posté le 17-09-2002 à 14:25:44  profilanswer
 

irulan > je pige pas ce que tu voudrais faire en fait :/ qu'est ce que tu entendas par les code valides ?
 
greg > m'en vas tester le IN ;)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°215652
Sh@rdar
Ex-PhPéteur
Posté le 17-09-2002 à 14:30:40  profilanswer
 

OK greg effectivement je n'y ai pas pensé du tout c'est bien mieux comme ça (déjà la requête est moins longue donc certainement plus rapide à analyser)
 
J'attends les précisions d'irulan pour tester son système.
 
Merchi !


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°215663
irulan
Posté le 17-09-2002 à 14:43:32  profilanswer
 

Bon en fait ta liste de codes qui sont dans les OR (ce que j'appelle les codes 'valides';) tu les mets dans une table dans ta base de données, genre :
 
 
CODES_VALIDES
-------------
1
3
4
5
59
6
60
...
 
Maintenant imaginons que ta table s'appelle TABLE_PARAM, avec la colonne CODES_VALIDES, ta requête serait alors :
 
SELECT DISTINCT  
Articles.Id,  
Articles.Prix,  
Articles.Cat1,  
Articles.Code_interne,  
Articles.Dispo,  
Articles.Promo,  
Articles.Tva,  
DATE_FORMAT(Articles.Date,'%Y-%m-%d';) as Date, Desc_articles.Nom_fr,  
Desc_articles.Desc_fr,  
Fournisseur.Nom as Marque  
FROM Articles, TABLE_PARAM  
LEFT JOIN Desc_articles ON Articles.Id = Desc_articles.Idx  
LEFT JOIN Fournisseur ON Fournisseur.Id = Articles.Fournisseur  
LEFT JOIN Categories ON Categories.Pere = 1  
WHERE (Articles.Cat1 = TABLE_PARAM.CODES_VALIDES or
 Articles.Cat2 = TABLE_PARAM.CODES_VALIDES)

n°215665
irulan
Posté le 17-09-2002 à 14:45:45  profilanswer
 

J'ai oublié : si les codes valides ne sont pas les mêmes pour cat1 et cat2 il suffit d'avoir deux colonnes de valeur dans ta TABLE_PARAM, chacune correspondant aux valeurs désirées pour cat1 et cat2.

n°215667
irulan
Posté le 17-09-2002 à 14:49:10  profilanswer
 

Et un dernier truc : si les jointures ne marche pas correctement (je n'ai pas bien regardé ta requête, notamment avec les left join) tu peux utiliser ... cat1 IN (select codes_valides from table_param) OR cat2 IN (select codes_valides from table_param)  
 
Cette solution se rapproche de la syntaxe proposée par greg, tout en gardant la facilité de maintenance liée à l'utilisation d'une table pour stocker les valeurs.
 
Mais bon je n'aime pas trop utiliser les IN c'est plus gourmand que des jointures....


Message édité par irulan le 17-09-2002 à 14:49:27
mood
Publicité
Posté le 17-09-2002 à 14:49:10  profilanswer
 

n°215669
--greg--
Posté le 17-09-2002 à 14:50:08  profilanswer
 

irulan a écrit a écrit :

 
Mais bon je n'aime pas trop utiliser les IN c'est plus gourmand que des jointures....



c'est pas plutot le select imbriqué qui est gourmant? (et non le IN  en lui meme) (juste une question)


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°215672
Sh@rdar
Ex-PhPéteur
Posté le 17-09-2002 à 14:53:27  profilanswer
 

ok...
 
j'ai peu être oublié de préciser : les codes valides sont déjà récupérés d'un table mais ensuite insérés dans un tableau multidimensionnel pour éviter les requêtes multiples en coursde navigation (le tableau est mis à jours lors de la modification de la table).
 
le problème c'est que j'ai TOUT les codes, pas seulement ceux qui m'intéressent
 
quand j'arrive sur la page où jai besoin de cette requête, je parcours le tableau pour en récupérer les catégories filles et je génère la requête
 
donc ta proposition ne convient pas pour mon truc, c'est une jointure classique mais que je ne peux pas appliquer car je ne connais pas à l'avance les éléments pour l'effectuer.
 
merci quand même ;)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°215673
irulan
Posté le 17-09-2002 à 14:53:38  profilanswer
 

greg > Non j'ai la notion que dans le cas d'un IN (ou alors c'était pour un NOT IN ? me souvient plus exactement :/ ) le SGBD va examiner les lignes une à une contrairement aux jointures : je sais que du temps ou je travaillais sur des tables de 14 millions d'enregistrements, tu faisais vite la différence entre un IN et une jointure.
 
Bon maintenant j'ai peut-être une fausse idée du IN / NOT IN


Message édité par irulan le 17-09-2002 à 14:54:10
n°215676
Sh@rdar
Ex-PhPéteur
Posté le 17-09-2002 à 14:55:51  profilanswer
 

pour info
 
fait select table1.champ,table2.champ FROM table1,table2 c'est exactement pareil que le LEFT JOIN (cf la doc)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°215679
irulan
Posté le 17-09-2002 à 14:57:59  profilanswer
 

Sh@rdar a écrit a écrit :

ok...
...
quand j'arrive sur la page où jai besoin de cette requête, je parcours le tableau pour en récupérer les catégories filles et je génère la requête
...
merci quand même ;)  




 
Ben à toi de voir, mais si tu as vraiment des problèmes de perf, gardes cette solution à l'esprit : en effet, rien ne t'empêche de créer (puis dropper une fois la requête effectuée) une table temporaire où tu insères les valeurs à chaque fois.
 
Ce n'est pas long la création d'une table, en revanche ça peut tout changer au niveau d'une requête dans ce genre-là.

n°215681
Sh@rdar
Ex-PhPéteur
Posté le 17-09-2002 à 14:58:45  profilanswer
 

Retourne 1 si expression est un membre de la liste IN, sinon retourne 0.Si toutes les valeurs de la liste IN sont constantes, alors elles sont toutes converties au type de expression, et triées. La recherche dans la listes est alors faite avec une recherche binaire. Cela signifie que la recherche est très rapide si la liste IN ne contient que des constantes. Si expression est une chaîne sensible à la casse, la comparaison avec les valeurs de IN en tiendra compte.  
 
apparemment ça doit être assez rapide sur des entiers comme pour mon cas (de toute façon j'aurais pas 20 millions de catégories d'articles dans une boutique..)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°215682
irulan
Posté le 17-09-2002 à 15:01:37  profilanswer
 

Sh@rdar a écrit a écrit :

Retourne 1 si expression est un membre de la liste IN, sinon retourne 0.Si toutes les valeurs de la liste IN sont constantes, alors elles sont toutes converties au type de expression, et triées. La recherche dans la listes est alors faite avec une recherche binaire. Cela signifie que la recherche est très rapide si la liste IN ne contient que des constantes. Si expression est une chaîne sensible à la casse, la comparaison avec les valeurs de IN en tiendra compte.  
 
apparemment ça doit être assez rapide sur des entiers comme pour mon cas (de toute façon j'aurais pas 20 millions de catégories d'articles dans une boutique..)




 
Ok merci pour l'info sur le IN :hello:. Je me coucherai un peu moins bête ce soir ;)

n°215721
omega2
Posté le 17-09-2002 à 15:47:37  profilanswer
 

Sh@rdar a écrit a écrit :

pour info
 
fait select table1.champ,table2.champ FROM table1,table2 c'est exactement pareil que le LEFT JOIN (cf la doc)



Si je me trompe pas, un "select table1.champ,table2.champ FROM table1,table2" ne permet de sortir que les lignes qui ont une cosrespondance dans les deux tables.
un LEFT JOIN, permet de sortir toutes les lignes de la tables situé à gauche des motes LEFT JOIN et les valeurs corespondant à l'autre table quand elles existent sinon des valeurs mises à null.
Mais bon, comme je les utilisent jamais, je peux me tromper.

n°215779
HappyHarry
Posté le 17-09-2002 à 16:21:24  profilanswer
 

omega2 a écrit a écrit :

Si je me trompe pas, un "select table1.champ,table2.champ FROM table1,table2" ne permet de sortir que les lignes qui ont une cosrespondance dans les deux tables.
un LEFT JOIN, permet de sortir toutes les lignes de la tables situé à gauche des motes LEFT JOIN et les valeurs corespondant à l'autre table quand elles existent sinon des valeurs mises à null.
Mais bon, comme je les utilisent jamais, je peux me tromper.




 
ca c une jointure externe a gauche left OUTER join

n°215786
omega2
Posté le 17-09-2002 à 16:44:04  profilanswer
 

HappyHarry a écrit a écrit :

 
 
ca c une jointure externe a gauche left OUTER join



Désolé, j'ai rien dit alors. ;)

n°215893
joce
Architecte / Développeur principal
"BugHunter"
Posté le 17-09-2002 à 19:35:04  profilanswer
 

Les OR sont à éviter le plus possible, ils ne sont pas optimisés par l'optimizer de MySQL (donc perfs faibles).
A la limite si tu as MySQL 4.x utilise UNION à la place.


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°215896
--greg--
Posté le 17-09-2002 à 19:37:30  profilanswer
 

dit joce, mysql, ça leur arracherait la gueule de releaser une version4 un jour :??:


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°215897
joce
Architecte / Développeur principal
"BugHunter"
Posté le 17-09-2002 à 19:38:24  profilanswer
 

--greg-- a écrit a écrit :

dit joce, mysql, ça leur arracherait la gueule de releaser une version4 un jour :??:



ba tu vas sur mysql.com et tu cliques sur 4.0.3 à droite :heink:


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°215899
--greg--
Posté le 17-09-2002 à 19:39:00  profilanswer
 

joce a écrit a écrit :

ba tu vas sur mysql.com et tu cliques sur 4.0.3 à droite :heink:



ben ptain j'en viens et j'ai vu que des beta [:zebra33]


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°215902
joce
Architecte / Développeur principal
"BugHunter"
Posté le 17-09-2002 à 19:44:32  profilanswer
 

--greg-- a écrit a écrit :

ben ptain j'en viens et j'ai vu que des beta [:zebra33]



ah ba vi, mais bon faut tester avant de releaser en finale hein :heink:
Ceci dit à mon avis la 4.0.4 sera probablement déclarée comme stable


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°215903
--greg--
Posté le 17-09-2002 à 19:47:32  profilanswer
 

joce a écrit a écrit :

ah ba vi, mais bon faut tester avant de releaser en finale hein :heink:
Ceci dit à mon avis la 4.0.4 sera probablement déclarée comme stable



ben je sais. mais ça fait quand meme longtemps là nan?
une idée de pour quand c'est la 404? (si on arrive à la downloader [:ddr555])


Message édité par --greg-- le 17-09-2002 à 19:47:40

---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°215908
joce
Architecte / Développeur principal
"BugHunter"
Posté le 17-09-2002 à 20:15:06  profilanswer
 

--greg-- a écrit a écrit :

ben je sais. mais ça fait quand meme longtemps là nan?
une idée de pour quand c'est la 404? (si on arrive à la downloader [:ddr555])



bientôt je pense, ca fait longtemps que j'ai pas vu de bug report contre la 4.0.4


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°215910
--greg--
Posté le 17-09-2002 à 20:16:11  profilanswer
 

joce a écrit a écrit :

bientôt je pense, ca fait longtemps que j'ai pas vu de bug report contre la 4.0.4



ça fait lgtps qu'ils disent bientot non? ;)


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°216256
joce
Architecte / Développeur principal
"BugHunter"
Posté le 18-09-2002 à 12:46:24  profilanswer
 

--greg-- a écrit a écrit :

ça fait lgtps qu'ils disent bientot non? ;)
 




non, leur politique c'est de la sortir en Stable quand il y a plus de bug report pendant un temps T.
Après si tu trouves ca nul, ba prends la beta au lieu de raler.


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°216300
--greg--
Posté le 18-09-2002 à 13:45:07  profilanswer
 

joce a écrit a écrit :

 
non, leur politique c'est de la sortir en Stable quand il y a plus de bug report pendant un temps T.
Après si tu trouves ca nul, ba prends la beta au lieu de raler.



non, non, c'est tres bien. C'est juste qu'il me semble que ça fait une éternité qu'elle est en beta. spa grave.
Merci des infos ;)  :hello:


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°216348
joce
Architecte / Développeur principal
"BugHunter"
Posté le 18-09-2002 à 14:23:08  profilanswer
 

--greg-- a écrit a écrit :

non, non, c'est tres bien. C'est juste qu'il me semble que ça fait une éternité qu'elle est en beta. spa grave.
Merci des infos ;)  :hello:  



non elle est en beta depuis la 4.0.3, avant elle était en alpha :)
Donc c'est assez recent :)


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°216380
--greg--
Posté le 18-09-2002 à 14:44:15  profilanswer
 

joce a écrit a écrit :

non elle est en beta depuis la 4.0.3, avant elle était en alpha :)
Donc c'est assez recent :)



ok :)


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°224485
joce
Architecte / Développeur principal
"BugHunter"
Posté le 07-10-2002 à 15:00:36  profilanswer
 

pour info le forum HFR tourne depuis ce matin avec MySQL-4.1 :D


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°224564
Sh@rdar
Ex-PhPéteur
Posté le 07-10-2002 à 16:34:12  profilanswer
 

ah d'accord, les plantages précédents étaient donc dus à la migration  :D  :D  
 
patapai !!! jsuis déjà dehors.


Message édité par Sh@rdar le 07-10-2002 à 16:34:29

---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
n°224574
joce
Architecte / Développeur principal
"BugHunter"
Posté le 07-10-2002 à 17:05:57  profilanswer
 

Sh@rdar a écrit a écrit :

ah d'accord, les plantages précédents étaient donc dus à la migration  :D  :D  
 
patapai !!! jsuis déjà dehors.



non y a pas eu de problème à la migration :p


---------------
Protèges carnets personnalisés & accessoires pour bébé
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MYSQL] De la longueur de la requête et son incidence sur les perfs

 

Sujets relatifs
Comment on fait pour savoir si le résultat d une requete est vidE ?php mysql EOF ????
[MySQL] PB avec MySQLdumpProbleme d'écriture de requete en SQL :
[MySQL] comment faire avec un between... [ - Job's Done - ]Mysql et C#
Transferer une base Access vers Mysql[PHP][Mysql] Update d'un champ qui marche po
[mysql]Upadte des tables[php] si vous deviez faire une classe pour gerer un base mysql....
Plus de sujets relatifs à : [MYSQL] De la longueur de la requête et son incidence sur les perfs


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR