$db->setRow() - queryAbfrage sparen?

Fragen zur Installation von CONTENIDO 4.9? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

$db->setRow() - queryAbfrage sparen?

Beitrag von rethus »

Ich habe momentan ein Plugin, in dem ich eine identische Query-Abfrage 2 mal hintereinander machen muss.
Klar kann ich jetzt einfach jeweils $db->query() aufrufen.

Frage ist an der Stelle, ob es ressourcen spart, wenn ich statt dessen mit $db->setRow(1); den Zeiger wieder auf das bereits vorhandene Abfrageergbnis zurücksetze.
Hat da jemand Erfahung ob dies wirklich eine Abfrage spart und ob es unerwünschte Seitenefekte haben kann, setRow zu nutzen... da in der API-Beschreibung ja nur die dürftige ANweisung steht: Do not set it manually unless you know what you are doing.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: $db->setRow() - queryAbfrage sparen?

Beitrag von rethus »

Naja, funktioniert nicht wirklich seh ich gerade.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
Faar
Beiträge: 1951
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Hat sich bedankt: 15 Mal
Kontaktdaten:

Re: $db->setRow() - queryAbfrage sparen?

Beitrag von Faar »

MySQL hat meines Wissens einen Cache, der Abfragen eine Weile im Cache behält.
http://dev.mysql.com/doc/refman/5.1/en/query-cache.html
Also ein gut eingerichteter MySQL Server optimiert sich selbst ein Stück weit.

Ich habe auch bei wiederholten Abfragen von sehr langen Tabellen (>40 Mio) keine Einbußen bemerkt.
Auch (in PHP Schleifen) verschachtelte Abfragen sind nicht so schlimm, solange sich mit Sortierungen und WHERE Anweisungen zurückgehalten wird.
Letzteres kann die Datenbank bei langen Tabellen zur Auslagerung des Caches auf die Platte zwingen.
Und dann wirds :cry:
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.
Antworten