[S]MySQL Query (Deine Meinung ist gefragt)

Was ist am besten?


  • Umfrageteilnehmer
    13

Gsus

schwankend^^
ID: 215354
L
22 Mai 2006
1.553
68
Hallo,

was meint ihr ist besser?
mysql_fetch_row();
mysql_fetch_array();
mysql_fetch_object();

bitte poste deine Meinung mit Begründung, besonders im Bezug auf die Geschwindigkeit der einzelnen Befehle weil es mich mal interessieren würde, was davon am besten zu benutzen ist..

mfg
Gsus
 
Suchs dir aus ;)
Inner Performance sind die gleich und sonst ist es nur eine Sache der Schreibweise. Musst dir halt überlegen,w as du am einfachsten findest.
Ich nutze mysql_fetch_object();
 
mysql_fetch_row() ist am schnellsten. Der Unterschied ist aber gering.
 
Zuletzt bearbeitet:
selfphp schrieb:
Mit mysql_fetch_array() kann man sich anhand einer Ergebnis-Kennung (Ergebnis-Kennung) Datensätze in einem assoziativen Array übergeben lassen. Dabei werden die Feldnamen innerhalb der Tabelle als Schlüssel des Arrays genutzt. Im Erfolgsfall liefert diese Funktion den aktuellen Datensatz, sonst wird false zurückgegeben. Der zweite Parameter (Ergebnistyp) ist optional. Sie können in diesem Parameter folgende Konstanten übergeben:

• MYSQL_ASSOC: Funktionsergebnis ist ein assioziatives Array.
• MYSQL_NUM: Funktionsergebnis ist ein numerisch indiziertes Array.
• MYSQL_BOTH: Funktionsergebnis ist ein Array, das die Elemente des Ergebnisdatensatzes sowohl assoziativ als auch numerisch indiziert enthält. Dies ist der Default-Wert.

selfphp schrieb:
Mit mysql_fetch_object() kann man sich anhand einer Ergebnis-Kennung (Ergebnis-Kennung) Datensätze als ein Objekt mit Eigenschaften, die den Feldern innerhalb der Tabelle entsprechen, übergeben lassen. Dabei können Sie anhand der Feldnamen auf die Werte zugreifen. Im Erfolgsfall liefert diese Funktion den aktuellen Datensatz, sonst wird false zurückgegeben. Der zweite Parameter (Ergebnistyp) ist optional. Sie können in diesem Parameter dieselben Konstanten wie in der Funktion mysql_fetch_array() übergeben:

• MYSQL_ASSOC
• MYSQL_NUM
• MYSQL_BOTH

selfphp schrieb:
Mit mysql_fetch_row() kann man sich anhand einer Ergebnis-Kennung (Ergebnis-Kennung) einen Datensatz in Form eines indizierten Arrays übergeben lassen. Im Erfolgsfall liefert diese Funktion den aktuellen Datensatz, sonst wird false zurückgegeben.

Oder guck direkt bei SelfPHP

Ich selber nutze btw mysql_fetch_assoc

selfphp schrieb:
Mit mysql_fetch_assoc() kann man sich anhand einer Ergebnis-Kennung (Ergebnis-Kennung) einen Datensatz in einem assoziativen Array übergeben lassen. Dabei werden die Feldnamen innerhalb der Tabelle als Schlüssel des Arrays genutzt. Im Erfolgsfall liefert diese Funktion den aktuellen Datensatz, sonst wird false zurückgegeben.

Hat jemand was dagegen ? Und wenn ja, warum ? Nachteile ?
 
an mysql_fetch_assoc hatte ich eben garnicht gedacht^^

gibt es einen unterscheid ziwschen mysql_fetch_array und mysql_fetch_assoc?

mfg
Gsus
 
also früher habe ich fetch_array genommen, heute nehme ich fetch_assoc da ich numerische indexe eigentlich nie verwende, es gibt ja von mysql die alias funktion, da brauche ich dann keinen numerischen index.
 
OT:Sers, darf man mal ein Beispiel, aus reiner Wissbegierigkeit, wissen :D
Is kein Offtopic, aber mir fällt trotzdem nix ein :mrgreen:
Ich weiß nur, dass ich einmal richtig froh drüber war, dass ich beide Indizes hatte.

Allerdings muss ich auch sagen, dass ich auch schon mal das Problem hatte, dass mich die numerischen Indizes genervt haben und ich sie mir nachträglich entfernen musst :biggrin:
 
Ich verwende auch _assoc(), denke es ist schneller aus _array() und da ich nicht umbedingt meine Spalten per Indizes anspreche sonder mit deren Name.
Gibt es eigentlich ein Gegenteil von _assoc() ? _array() wäre dann die Mischung aus _assoc() und der anderen Funktion ;)

EDIT:
Ah, sorry, gar nicht an _row() gedacht ;)