Mailinglisten-Archive |
Hallo Michael, da ich selbst nie mit ODBC arbeite, sondern immer mit nativen Datenbanktreibern, kann ich Dir aus der diesbezüglich mangelnden Erfahrung heraus leider nicht direkt sagen, woran das liegt. Deswegen gehe ich mit meinen Fragen mal Schritt für Schritt vor, um das Problem einzugrenzen. :-) Am Montag, 16. Oktober 2006 08:59 schrieb Michael Borchers: > Ein Kunde von uns hat folgendes Phänomen: > Bei einer Abfrage via ODBC aus einer Tabelle mit mehr als 1000 > Einträgen liefern 2 von 3 MySQL 4.1 Datenbanken ein leeres Resultat > ohne Fehlermeldung. Ich kenne Eure Programmierung nicht, aber enthält die von odbc_query() zurückgelieferte Resource auch ein leeres Resultat, oder wird nur nichts auf der Seite ausgegeben? Wenn es erst einmal letzteres ist, würde ich noch einmal prüfen, ob vielleicht eine Fehlermeldung zurückgegeben wird, die dann einen Hinweis darauf geben könnte, wo wir weitersuchen müssen. > Eine der Datenbanken liegt bei 1und1. > Unsere Vermutung war eine Limitierung seitens 1und1, > allerdings wurde uns mitgeteilt, dass dem nicht so ist. > > Der zweite Server liegt im Netzwerk, hier taucht das > gleiche Problem auf. > > Der dirtte Server ist unser eigener Server. Hier klappt > die Abfrage einwandfrei und in Sekundenschnelle. Verwenden alle drei Server denselben ODBC-Treiber oder gibt es vielleicht Unterschiede (Hersteller, Version...)? Und habt Ihr die ODBC-Konfigurationsparameter auf allen drei Rechnern verglichen? > Wir vermuten, dass es diesbzgl eine Einstellungsache in > MySQL direkt ist. Gibt es hier einen "Limiter"?! Tendenziell würde ich eher auf den ODBC-Treiber als Kern des Problems tippen. Funktioniert die Datenbankabfrage, denn mit weniger als 1000 zurückgelieferten Datensätzen, also generell z.B. erstmal mit LIMIT 0,1? Wenn ja, wo liegt die Grenze bei den beiden betroffenen Rechnern? Was liefert die Datenbankabfrage, wenn ihr sie nicht mit den ODBC-Funktionen, sondern den mysql- oder mysqli-Funktionen an die Datenbank absetzt? Funktioniert sie dann auf allen drei Rechnern? Und die letzte Frage, die mir dazu einfällt: Könnte es sein, daß ihr ein Zeichensatzproblem habt? Kommen in der Datenbankabfrage zufällig Sonderzeichen vor? Wenn da nicht überall die Zeichensatzangaben richtig eingestellt sind, wird die Datenbankabfrage natürlich ein leeres Resultat liefern. :-) Viele Grüße Lutz
php::bar PHP Wiki - Listenarchive