Toon posts:

[MySQL/ALG] Queries in apart bestand includen?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben nog niet zo heel lang bezig met MySQL functies in PHP, maar ik erger me een klein beetje aan die queries die in de PHP code staan.
Nu bedacht ik me dat het misschien geen slecht idee was om die queries allemaal in één PHP file te stouwen, en dan die file includen in elk script waar ik queries nodig heb.

Aangezien ik niet verwacht dat het een zwaar belaste site gaat worden (ik ben realistisch ;)), denk ik dat het qua performance best wel iets mag schelen, ik bedoel: mijn manier is vrijwel zeker trager, en zeker minder efficiënt.
Maar als er een aanpassing in de code moet komen, dan hoef ik niet tegen al die IMHO lelijke queries aan te kijken, of een query kan aangepast worden zonder die in de PHP op te gaan zoeken.

Nu is mijn vraag, of punt van discussie misschien:
Moet je kiezen voor optimale performance en hoogst mogelijke efficiëntie, of moet je kiezen voor de schone, duidelijke code? Of is het sowieso een slecht plan?

(edit: voor alle duidelijkheid: ik wil in dat include bestand een lijst met queries als strings in variabelen opslaan)

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Op donderdag 07 februari 2002 18:57 schreef Cheatah het volgende:
Ik ben nog niet zo heel lang bezig met MySQL functies in PHP, maar ik erger me een klein beetje aan die queries die in de PHP code staan.
Nu bedacht ik me dat het misschien geen slecht idee was om die queries allemaal in één PHP file te stouwen, en dan die file includen in elk script waar ik queries nodig heb.

Aangezien ik niet verwacht dat het een zwaar belaste site gaat worden (ik ben realistisch ;)), denk ik dat het qua performance best wel iets mag schelen, ik bedoel: mijn manier is vrijwel zeker trager, en zeker minder efficiënt.
Maar als er een aanpassing in de code moet komen, dan hoef ik niet tegen al die IMHO lelijke queries aan te kijken, of een query kan aangepast worden zonder die in de PHP op te gaan zoeken.

Nu is mijn vraag, of punt van discussie misschien:
Moet je kiezen voor optimale performance en hoogst mogelijke efficiëntie, of moet je kiezen voor de schone, duidelijke code? Of is het sowieso een slecht plan?

(edit: voor alle duidelijkheid: ik wil in dat include bestand een lijst met queries als strings in variabelen opslaan)
Schone, duidelijke code is meestal efficient ;) . Ik ergerde me er ook aan. Je kan idd prima de queries opslaan in een te includen file ($query1=("Select * from got");). Ik gebruik zelf gewoonlijk in een class (SQLclass) en zet de queries in functies, zodat je in die functies tegelijk de zooi kan doen die je doet na een querie.

[edit]typo

Sundown Circus


Verwijderd

schone en duidelijke code heeft mijn voorkeur. komt nog eens bij dat je in schone en duidelijke code makkelijker ziet wat efficient is en wat niet.

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Hee Darth... zitten we samen mensen dingen uit te leggen ?

>:)

Sundown Circus


Verwijderd

Op donderdag 07 februari 2002 19:09 schreef RedRose het volgende:
Hee Darth... zitten we samen mensen dingen uit te leggen ?

>:)
ja :P moet toch wat doen op me vrije avond :P

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Op donderdag 07 februari 2002 18:57 schreef Cheatah het volgende:Nu is mijn vraag, of punt van discussie misschien:
Moet je kiezen voor optimale performance en hoogst mogelijke efficiëntie, of moet je kiezen voor de schone, duidelijke code? Of is het sowieso een slecht plan?
De eeuwige trade-off. In dit geval zou ik zeker gaan voor schone/duidelijke code. Maar is het wel veel schoner, duidelijker?
Als ik een gemiddeld PHP script zie (van mezelf) dan vind ik de queries er nou niet uitspringen qua lelijkheid, het zijn meer al die ", ' en $ die het doen. (en lelijke syntax coloring ;))

Bovendien vind ik queries in een apart bestand niet duidelijker.
mysql_query($queries['allArticles']);
of
mysql_query("SELECT title,content FROM articles");

in het laatste geval is veel duidelijker wat de query nou eigenlijk teruggeeft. Een query is code en hoort in de code imho.
Ik zou dus gewoon voor inline queries gaan.

Je zou de queries ook mooier op kunnen maken als je je eraan ergert
code:
1
2
3
4
5
6
7
8
9
   SELECT     t1.bla,
             t2.bla2
   FROM     tabel   as t1
             tabel2  as t2
   WHERE       (tabelrelaties)
             (condities in volgorde van prioriteit)
   GROUP BY y       
   ORDER BY x
   LIMIT       o,l

in plaats van
code:
1
2
   SELECT t1.bla,t2.bla2  FROM tabel as t1 tabel2  as t2
   WHERE (tabelrelaties) (condities in volgorde van prioriteit) GROUP BY y ORDER BY x  LIMIT 0,l

(rechtstreeks uit de faq :) zit typo in limit btw)
Pagina: 1