JeuWeb - Crée ton jeu par navigateur
Php Vs Sql - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Php Vs Sql (/showthread.php?tid=2254)



Php Vs Sql - OncleJames - 06-01-2008

Bonjour,


M'étant mis depuis quelques temps à éplucher SQL, je me demandai si il était intéréssant de mettre les conditionneurs dans les requetes SQL ( if, switch, .. ), gagne t'on en ressource, .. .
D'aprés ce que j'ai pu en lire, je dirai que sa vaut le coup en économie, mais j'aimerai avoir les avis d'autres personnes s'y connaissant Smile


Merci d'avance

OncleJames


RE: Php Vs Sql - Anthor - 06-01-2008

Je n'ai pas essayé, disponible uniquement à partir de mySQL 5.0

http://dev.mysql.com/doc/refman/5.0/en/if-statement.html


RE: Php Vs Sql - Sephi-Chan - 06-01-2008

Je pense qu'il faut faire attention.

Avec le lobbying de la séparation et de la lourdeur dues au surcouches auquel on a le droit, ce serait assez mal venu de tout mélanger pour des gains pas forcément exceptionnels.

Maintenant, il faut reconnaître que dans certains cas, il est plus cohérent d'avoir des conditions directement dans le SQL, il faut juste voir comment ça s'utilise dans une requête.

Un exemple tout bête, quand on fait un système de commentaires, le test qui détermine si on met un s à la fin du mot ou pas serait logiquement fait par SQL.


Sephi-Chan


RE: Php Vs Sql - Amrac - 07-01-2008

C'est marrant, c'est plutôt le genre de test que je ferai en PHP (sans raison particulière d'ailleurs pour être honnête Tongue)


RE: Php Vs Sql - naholyr - 07-01-2008

Bah si, il y a une raison :o c'est que le fait de déterminer s'il y a un 's' ou pas à 'commentaire', c'est de l'ordre de l'affichage, donc ça doit être idéalement géré par le moteur de template ou le système de traduction qui gèrera les formes plurielles (c'est pas trivial : en anglais on dit "0 egg", "1 egg", "2 eggs", en français on dit "0 œufs", "1 œuf", "2 œufs, et je ne doute pas qu'il y a bien d'autres systèmes bien lourds dans d'autres langues).

Par défaut si la forme plurielle n'est pas gérée par le système de traduction, on peut en réalité difficilement le laisser traiter par le moteur de template. Donc au pire on va le traiter juste avant.

Mais le traiter au moment où on rapatrie les données, ça n'a pas de sens, ça n'a rien à voir avec le rapatriement des données mais avec leur affichage, c'est à dire deux phases opposées (dans l'ordre d'exécution) !
De plus quand on va rapatrier l'ensemble des 80 commentaires, on va ajouter une colonne factice qui contiendra 80 fois "commentaires", quelle gachis de mémoire Sad


Donc non, pas logique de mettre ce type de traitement dans les requêtes Tongue


RE: Php Vs Sql - Sephi-Chan - 07-01-2008

Ah oui, en fait. xD


RE: Php Vs Sql - OncleJames - 07-01-2008

Quels opérations vous mettriez donc au niveau du SQL plutot qu'en php.

J'ai lu par exemple les choix de destination pour des voyages/deplacements, 'pour aller de A vers D on peut faire ABD / ABCD / ACD'