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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [PHP/SQL] le plus rapide concretement?

 


 Mot :   Pseudo :  
 
 Page :   1  2  3
Page Précédente
Auteur Sujet :

[PHP/SQL] le plus rapide concretement?

n°273207
Suri
Darksurious
Posté le 19-12-2002 à 18:01:57  profilanswer
 

il vaut mieux:
- mettre a jour deux tables a chaque post
ou
- faire une sous requete?
 
j'explique...
prenons par ex le forum HFR [:titprem]
imaginons deux tables: une table_topic (contenant le nom du topic le posteur la date etc...) et une table_message (l'auteur, le texte etc...)
lorsque qqun poste un msg dans un topic (donc ds table_message), on peut voir sur la page de listing des topics son nom en tant que dernier posteur. (page generée grace a table_topic)
 
Pour cela, vaut il donc mieux, mettre a jour table_message (avec le corps du message, le nick etc..) ET la table_topic (modif du champ dernier_posteur)
ou
juste la table_message, sachant que pour la generation de la page topic, il y aurait une sousrequetes pour aller chercher le nom et la date du dernier post du topic?
 
 
j'espere que je suis assez clair.. c un brin confu encore ds mon esprit :D


---------------
Suri.morkitu.org : Balades au coeur de la ville...
mood
Publicité
Posté le 19-12-2002 à 18:01:57  profilanswer
 

n°273304
joce
Architecte / Développeur principal
"BugHunter"
Posté le 19-12-2002 à 19:43:54  profilanswer
 

methode 1 si tu cherches la rapidite au detriment de la place
methode 2 si tu cherches l'optimisation de la place et la normalisation de ta BDD

n°273309
Suri
Darksurious
Posté le 19-12-2002 à 19:55:53  profilanswer
 

ok merci :)

n°273346
Cherrytree
cn=?
Posté le 19-12-2002 à 20:26:02  profilanswer
 

Et j'opterai pour la possibilité 2, tout à fait personnellement.


---------------
Le site de ma maman
n°273357
Suri
Darksurious
Posté le 19-12-2002 à 20:32:55  profilanswer
 

Cherrytree a écrit :

Et j'opterai pour la possibilité 2, tout à fait personnellement.


ah? :/j'etais parti sur la 1ere plutot...
perso je prefere faire une seule requete (meme si plus complexe)
mais bon, je cherche la rapidité avant tout...
 
 
argumentes© stp :D


Message édité par Suri le 19-12-2002 à 20:33:25
n°273404
Cherrytree
cn=?
Posté le 19-12-2002 à 22:12:21  profilanswer
 

Suri a écrit :


ah? :/j'etais parti sur la 1ere plutot...
perso je prefere faire une seule requete (meme si plus complexe)
mais bon, je cherche la rapidité avant tout...
 
 
argumentes© stp :D

En fait, la normalisation de la base me paraît importante, parce que cela donne une structure conforme à la logique utilisée la plupart du temps (comprendre recommandée la plupart du temps). Ensuite, j'imagine qu'une table normalisée est plus capable de supporter une modification de structure, étant donné que les informations ne sont pas dupliquées et qu'il n'y a pas de multiples liens entre les enregistrements. Cette logique de conception me parait primordiale.
 
La rapidité est aussi un facteur important, mais la dénormalisation des tables devrait toujours être fait avec précaution. Ce serait bien si tu pouvais faire des tests de montée en charge avec les deux maquettes. C'est long à faire, mais la différence de rapidité pourrait te permettre de faire le choix qui est le plus adapté. Je ne connais pas les gains classiques entre méthode 1 et 2. Cela doit pouvoir se trouver, même si j'ignore où.
 
Voilà mon petit avis. N'hésite pas à demander, si ce que je raconte n'est pas clair.


---------------
Le site de ma maman
n°273484
joce
Architecte / Développeur principal
"BugHunter"
Posté le 20-12-2002 à 01:15:26  profilanswer
 

faut voir que dans la méthode 2 la jointure effectuee n'est pas bien méchante non plus.


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°273487
goueg
De passage
Posté le 20-12-2002 à 01:27:44  profilanswer
 

sinon, la methode 1 est plus pratique pour afficher le nom du modo qui a fermé le topic (:d)...
alors que la methode 2 est meilleure quand le dernier posteur efface son message :)


---------------
(Feed-Back HFR) - Funky Tonight!
n°273491
joce
Architecte / Développeur principal
"BugHunter"
Posté le 20-12-2002 à 01:47:59  profilanswer
 

Goueg a écrit :

sinon, la methode 1 est plus pratique pour afficher le nom du modo qui a fermé le topic (:d)...
alors que la methode 2 est meilleure quand le dernier posteur efface son message :)


tu peux très bien mettre une condition sur ta requète SQL ;)


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°273492
goueg
De passage
Posté le 20-12-2002 à 01:51:01  profilanswer
 

sur laquelle de requête? [:figti]  
 
(tirage de vers du nez ON :d)


---------------
(Feed-Back HFR) - Funky Tonight!
mood
Publicité
Posté le 20-12-2002 à 01:51:01  profilanswer
 

n°273493
joce
Architecte / Développeur principal
"BugHunter"
Posté le 20-12-2002 à 02:44:26  profilanswer
 

Goueg a écrit :

sur laquelle de requête? [:figti]  
 
(tirage de vers du nez ON :d)

celle qui rappatrie les donnees des titres.
A la limite tu fais un :
 
IF(close=1,modo,dernier_auteur) dans ta requète :)


Message édité par joce le 20-12-2002 à 03:29:25

---------------
Protèges carnets personnalisés & accessoires pour bébé
n°273552
Suri
Darksurious
Posté le 20-12-2002 à 10:23:14  profilanswer
 

merci tout le monde  :whistle:  
jvais m'y remettre :)

n°273554
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 10:26:33  profilanswer
 

Suri a écrit :

il vaut mieux:
- mettre a jour deux tables a chaque post
ou
- faire une sous requete?
 
j'explique...
prenons par ex le forum HFR [:titprem]
imaginons deux tables: une table_topic (contenant le nom du topic le posteur la date etc...) et une table_message (l'auteur, le texte etc...)
lorsque qqun poste un msg dans un topic (donc ds table_message), on peut voir sur la page de listing des topics son nom en tant que dernier posteur. (page generée grace a table_topic)
 
Pour cela, vaut il donc mieux, mettre a jour table_message (avec le corps du message, le nick etc..) ET la table_topic (modif du champ dernier_posteur)
ou
juste la table_message, sachant que pour la generation de la page topic, il y aurait une sousrequetes pour aller chercher le nom et la date du dernier post du topic?
 
 
j'espere que je suis assez clair.. c un brin confu encore ds mon esprit :D
 


 
Houlà !!!
 
Méthode 1 sans réfléchir !!!
Tu te rend compte du gain de perfs ?
 
Avec la méthode 2, tu dois exécuter autant de sous-requètes pour trouver le dernier posteur qu'il y a de topic affichés !!!
 
Sois une bonne 30aine !
 
Et sur un table "message" qui comporterai un bon million d'enreg... tes perfs vont s'ecrouler !!!
 
Par contre, ça t'oblige à maintenir le champs "dernier posteur" dans la table des topic.
Donc, ne pas oublier de la mettre à jours dans TOUS les cas (réponse, suppression du dernier message...).
 
Et il en vas de même beaucoup d'autres infos qui paraissent etre facilement récupérable par simple requète :
Le nombre de méssages postés depuis 00h00 par exemple.
Un simple SELECT te ramène ce nombre, mais c'est trop couteux sur une table de 500.000 message.
Il faut passer par un champs, incrémenter ce champ à chaque post et le remettre à zéro à 00h00.
 

n°273556
antp
Super Administrateur
Champion des excuses bidons
Posté le 20-12-2002 à 10:28:51  profilanswer
 

cyp en forsse a écrit :


Méthode 1 sans réfléchir !!!


 
Et en réfléchissant, tu prends laquelle ? :??:


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°273568
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 10:45:34  profilanswer
 

antp a écrit :


 
Et en réfléchissant, tu prends laquelle ? :??:


 
Ben... lis l'argumentaire au lieu d'essayer de faire de l'humour... :p

n°273571
tomlameche
Et pourquoi pas ?
Posté le 20-12-2002 à 10:46:49  profilanswer
 
n°273685
joce
Architecte / Développeur principal
"BugHunter"
Posté le 20-12-2002 à 12:43:54  profilanswer
 

cyp en forsse a écrit :


 
Houlà !!!
 
Méthode 1 sans réfléchir !!!
Tu te rend compte du gain de perfs ?
 
Avec la méthode 2, tu dois exécuter autant de sous-requètes pour trouver le dernier posteur qu'il y a de topic affichés !!!
 


 
pas d'accord, t'as juste une seule jointure a faire.

n°273689
--greg--
Posté le 20-12-2002 à 12:51:03  profilanswer
 

cyp en forsse a écrit :


 
Houlà !!!
 
Méthode 1 sans réfléchir !!!
Tu te rend compte du gain de perfs ?
 
Avec la méthode 2, tu dois exécuter autant de sous-requètes pour trouver le dernier posteur qu'il y a de topic affichés !!!
 
Sois une bonne 30aine !
 
Et sur un table "message" qui comporterai un bon million d'enreg... tes perfs vont s'ecrouler !!!
 
Par contre, ça t'oblige à maintenir le champs "dernier posteur" dans la table des topic.
Donc, ne pas oublier de la mettre à jours dans TOUS les cas (réponse, suppression du dernier message...).
 
Et il en vas de même beaucoup d'autres infos qui paraissent etre facilement récupérable par simple requète :
Le nombre de méssages postés depuis 00h00 par exemple.
Un simple SELECT te ramène ce nombre, mais c'est trop couteux sur une table de 500.000 message.
Il faut passer par un champs, incrémenter ce champ à chaque post et le remettre à zéro à 00h00.
 
 

:sarcastic:  
remets toi à tes bagnoles, toi, ça vaudra mieux.... :/


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°273702
ethernal
Chercheur de vérité...
Posté le 20-12-2002 à 13:04:15  profilanswer
 

en fait il suffit de savoir que
- le rafraichissement de la page (liste des sujets) est sans doute l'action la plus fréquente
- l'ajout d'un message est moyennement fréquent  
- la suppression de message est rare
 
à partir de là je dirais que l'option 1 est mieux, même si la base n'est plus "normalisée".

n°273705
joce
Architecte / Développeur principal
"BugHunter"
Posté le 20-12-2002 à 13:07:20  profilanswer
 

toute facon c'est assez evident :D
la methode 2 voudrait dire qu'il faut chopper le MAX du numero associe, donc faire un group by, etc etc :D

n°273707
ethernal
Chercheur de vérité...
Posté le 20-12-2002 à 13:13:37  profilanswer
 

maintenant est-ce mieux de stocker dans la table topic  
- l'id du dernier posteur, son nom, la date du dernier post  
ou
- stocker uniquement l'id du dernier message ? (on sait retrouver la date, le posteur, ...)
 
-> donc avoir une table optimisée ou méga optimisée ?

n°273710
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 13:35:30  profilanswer
 

joce a écrit :


 
pas d'accord, t'as juste une seule jointure a faire.


 
 :??:  
 
Une jointure sur quel champs ?
 
Dans la méthode 2, tu es bien obligé d'aller faire, par exemple, un SELECT MAX sur la date ou l'ID des messages pour sortir le dernier message du topic non ?
 

n°273711
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 13:36:46  profilanswer
 

--greg-- a écrit :

:sarcastic:  
remets toi à tes bagnoles, toi, ça vaudra mieux.... :/


 
T'es gentil, on parle technique ici.
Alors essaie de faire un effort pour suivre la discution et argumenter ou vas parler chiffon dans le topic bla-bla.
 

n°273713
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 13:40:02  profilanswer
 

ethernal a écrit :

maintenant est-ce mieux de stocker dans la table topic  
- l'id du dernier posteur, son nom, la date du dernier post  
ou
- stocker uniquement l'id du dernier message ? (on sait retrouver la date, le posteur, ...)
 


 
La solution de stocker l'id du dernier posteur n'est pas bonne, parceque tu ne serais pas retrouver le dernier message (dans le cas ou ce posteur aurait posté une autre réponse dans un autre topic).
 
Tu stock juste l'ID du dernier message.
 
Puis tu fais un JOIN pour récupérer l'ID du posteur et un autre imbriqué pour récupérer son pseudo !

n°273716
ethernal
Chercheur de vérité...
Posté le 20-12-2002 à 13:51:12  profilanswer
 

cyp en forsse a écrit :


 
La solution de stocker l'id du dernier posteur n'est pas bonne, parceque tu ne serais pas retrouver le dernier message (dans le cas ou ce posteur aurait posté une autre réponse dans un autre topic).
 
Tu stock juste l'ID du dernier message.
 
Puis tu fais un JOIN pour récupérer l'ID du posteur et un autre imbriqué pour récupérer son pseudo !


oui bon ok j'aurais du dire :
- l'id du dernier message, l'id du dernier posteur, la date du dernier post, le nom du dernier posteur.
ou
- l'id du dernier message
 
je pensais que tout le monde l'aurais compris  :ange:

n°273721
joce
Architecte / Développeur principal
"BugHunter"
Posté le 20-12-2002 à 13:55:09  profilanswer
 

cyp en forsse a écrit :


 
 :??:  
 
Une jointure sur quel champs ?
 
Dans la méthode 2, tu es bien obligé d'aller faire, par exemple, un SELECT MAX sur la date ou l'ID des messages pour sortir le dernier message du topic non ?
 
 

jointure sur le champ numeropost
 
tu fais un  
 
SELECT pseudo, titre_topic, ..., MAX(date) as a FROM titre,topic WHERE titre.numeropost=topic.numeropost GROUP BY numeropost ORDER BY a DESC LIMIT 0,30;
 
C'est bien horrible comme query ceci dit :D


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°273722
Cherrytree
cn=?
Posté le 20-12-2002 à 13:55:13  profilanswer
 

ethernal a écrit :


je pensais que tout le monde l'aurais compris  :ange:  

T'inquiète. On avait tous compris. :jap:


---------------
Le site de ma maman
n°273724
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 13:58:46  profilanswer
 

ethernal a écrit :


oui bon ok j'aurais du dire :
- l'id du dernier message, l'id du dernier posteur, la date du dernier post, le nom du dernier posteur.
ou
- l'id du dernier message
 
je pensais que tout le monde l'aurais compris  :ange:  


 
Quel interet de mettre l'ID du dernier posteur ? tu vas de toute façon devoir faire des join pour récupérer les pseudo et la date.
L'ID du dernier message suffit.
 
Ou alors, si tu veux eviter les JOIN (couteux en temps) tu peux stocker la totale : ID de posteur, pseudo du posteur, ID du dernier message et Date du dernier message.
Mais c'est dommage de mettre tout ça et d'alourdir autant la table des topic qui est la plus sollicitée.
 
Sinon, pour le "je pensais que tout le monde l'aurais compris  :ange: " tu peux te le mettre ou je pense.
C'est déjà pas simple de correctement répondre aux questions, mais si en plus il faut deviner les oublis dans les formulations des questions, c'est plus de l'informatique, c'est du spiritisme.

n°273728
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 14:05:45  profilanswer
 

joce a écrit :

jointure sur le champ numeropost
 
tu fais un  
 
SELECT pseudo, titre_topic, ..., MAX(date) as a FROM titre,topic WHERE titre.numeropost=topic.numeropost GROUP BY numeropost ORDER BY a DESC LIMIT 0,30;
 


 
Ton MAX, dans ce cas, c'est une sous-requète.
Je vois pas pourquoi tu parle de jointure.
 

n°273730
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 20-12-2002 à 14:07:39  profilanswer
 

cyp en forsse a écrit :

T'es gentil, on parle technique ici.


ah bon  :??:  
 
kestuféla alors ? je croyais que t'étais en train d'étudier sérieusement l'asm moi, parce que vu ta seule réponse à un topic parlant d'assembleur, je me dis effectivement qu'il y a un mois, tu savais pas ce que c'est un compilo !


---------------
J'ai un string dans l'array (Paris Hilton)
n°273733
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 14:08:36  profilanswer
 

Cherrytree a écrit :

T'inquiète. On avait tous compris. :jap:  


 
Vu la qualité de ta seul contribution à ce sujet (20 ligne pour rien dire et ne pas répondre à une problèmatique pourtant trés simple à évaluer) je m'abstiendrais de tout commentaire.
 
 
 

n°273740
--greg--
Posté le 20-12-2002 à 14:12:01  profilanswer
 

cyp en forsse a écrit :


 
T'es gentil, on parle technique ici.
Alors essaie de faire un effort pour suivre la discution et argumenter ou vas parler chiffon dans le topic bla-bla.
 
 

[:blandine]


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

cyp en forsse a écrit :


 
Ton MAX, dans ce cas, c'est une sous-requète.
Je vois pas pourquoi tu parle de jointure.
 
 

non c'est pas une sous-requète.
 
Et la jointure est là : titre.numeropost=topic.numeropost.
 
Une sous requete c'est ca :
 
SELECT pseudo, titre_topic, ..., numeropost as a, (SELECT MAX(date) FROM topic WHERE numeropost=a) as b FROM titre ORDER BY b DESC LIMIT 0,30;


Message édité par joce le 20-12-2002 à 14:15:44

---------------
Protèges carnets personnalisés & accessoires pour bébé
n°273742
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 14:12:47  profilanswer
 

Harkonnen a écrit :


ah bon  :??:  
 
kestuféla alors ? je croyais que t'étais en train d'étudier sérieusement l'asm moi, parce que vu ta seule réponse à un topic parlant d'assembleur, je me dis effectivement qu'il y a un mois, tu savais pas ce que c'est un compilo !


 
 :p  
 
Tiens, voilà le dieux de l'ASM.
Masi souvenir d'asm sont lointaint, mais les tiens n'ont pas l'air trés frais non plus.
Pour le "byte" j'avais faux, mais tu aurais pu dire à notre élève que cette syntaxe s'accompagne de "ptr" pour obliger le compilo à ne charger que l'octet de poid faible dans une variable 16 bit ou dans un registre, vu que tu sais tout.
 
Tiens, si tu veux vraiment m'etonner, rappelle moi comment on passe du mode réel au mode protégé en asm 80386  :p  (je sais, c'est pas jeune, mais je me suis arreté il y a longtemps).

n°273747
tomlameche
Et pourquoi pas ?
Posté le 20-12-2002 à 14:16:48  profilanswer
 

cyp en forsse a écrit :


 
Ton MAX, dans ce cas, c'est une sous-requète.Je vois pas pourquoi tu parle de jointure.
 
 


Pourrais tu éclairer ma lanterne et m'expliquer ce que tu appelle sous-requête, parceque manifestement je ne dois pas avoir la même définition ?


---------------
Gérez votre collection de BD en ligne ! ---- Electro-jazzy song ---- Dazie Mae - jazzy/bluesy/cabaret et plus si affinité
n°273748
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 14:17:12  profilanswer
 

joce a écrit :

non c'est pas une sous-requète.
 
Et la jointure est là titre.numeropost=topic.numeropost.
 
Une sous requete c'est ca :
 
SELECT pseudo, titre_topic, ..., numeropost as a, (SELECT MAX(date) FROM topic WHERE numeropost=a) as b FROM titre ORDER BY b DESC LIMIT 0,30;  


 
Oui, dans la syntaxe, ceci est bien une sous requète.
Mais de toute façon, un MAX, c'est une requète ! dans les faits, ton SGBD va faire une requète pour te sortir le max.

n°273750
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 14:19:58  profilanswer
 

tomlameche a écrit :


Pourrais tu éclairer ma lanterne et m'expliquer ce que tu appelle sous-requête, parceque manifestement je ne dois pas avoir la même définition ?


 
Une sous requète est une requète dans une requete, mais ça, tu dois le savoir.
Maintenant, quand, dans une requète SELECT, tu spécifie un MAX sur un des champs selectionné, ton SGDB va réaliser une autre requète pour se positionner sur l'enreg demandé. Puis il va te sortir les champs spécifiés dans le SELECT.
 
Ben, ça, typiquement, c'est une sous-requète.

n°273751
joce
Architecte / Développeur principal
"BugHunter"
Posté le 20-12-2002 à 14:22:05  profilanswer
 

cyp en forsse a écrit :


 
Oui, dans la syntaxe, ceci est bien une sous requète.
Mais de toute façon, un MAX, c'est une requète ! dans les faits, ton SGBD va faire une requète pour te sortir le max.

ca n'a rien à voir, utilise les termes adéquats.
Le premier cas necessite une jointure entre les deux tables, tandis que le deuxième cas se base sur un dependent SUBSELECTs qui va crée une table temporaire en interne (ceci dit la premiere requete va generer aussi une table temporaire pour pouvoir faire l'order by).
Mais les deux requètes n'ont pour moi rien à voir.


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°273752
joce
Architecte / Développeur principal
"BugHunter"
Posté le 20-12-2002 à 14:23:08  profilanswer
 

cyp en forsse a écrit :


 
Une sous requète est une requète dans une requete, mais ça, tu dois le savoir.
Maintenant, quand, dans une requète SELECT, tu spécifie un MAX sur un des champs selectionné, ton SGDB va réaliser une autre requète pour se positionner sur l'enreg demandé. Puis il va te sortir les champs spécifiés dans le SELECT.
 
Ben, ça, typiquement, c'est une sous-requète.


tu ne connais pas le fonctionnement interne de la SGBD pour avancer ca. Un MAX n'est PAS une sous-requète.


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°273758
cyp en for​sse
Toggenburg enthusiast
Posté le 20-12-2002 à 14:31:39  profilanswer
 

joce a écrit :


tu ne connais pas le fonctionnement interne de la SGBD pour avancer ca. Un MAX n'est PAS une sous-requète.


 
Pas d'accord.
 
Je vais pas t'aprendre le principe d'une requète quand même !
 
Dans le cas qui nous interesse :  
 
1er requète : récuperer le jeux d'enreg de la table message qui satisfait la condition "appartient au topic".
 
2eme requète sur ce même jeux : récuperer celui qui a la date la plus récente.
 
Ensuite, tu peux formuler ta requète comme tu veux, dans le principe, tu fais une sous-requète.

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3
Page Précédente

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

  [PHP/SQL] le plus rapide concretement?

 

Sujets relatifs
[MySQL] Faire un rand sur une requete SQL...[Perl] variable de variable comme en PHP
[PHP] appel et modification d'un fichier texte dans une page php[PHP] + [JS] Concaténé pour la déclaration d'une variable JS
[PHP] Need help avec le filesystem[PHP] accès qu système de fichier et vérouillage de fichiers (flock)
[PHP]caractères spéciaux et formulaireformater un résultat d'une requete SQL dans SQLServer
[PHP] Comment recupperer le temps de generation des pages ???PHP et Javascript
Plus de sujets relatifs à : [PHP/SQL] le plus rapide concretement?


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