Hallo Sven,
Die Dokumentation von MySQL sagt jedenfalls: "Bei SELECT funktioniert mysql_affected_rows()
wie mysql_num_rows()." Damit wäre dein Performanceargument hinfällig, weil: Wenn es gleich
funktioniert, warum sollte das eine dann superschnell und das andere arschlahm sein?
In diesem Fall ist aber ein Wrapper um die MySQL-API gelegt. Und da ist die PHP-Doku
ausschlaggebend. Und die sagt: nutze mysql_affected_rows() nicht für SELECT-Statements. Und
wenn das da steht, sollte man sich auch daran halten. Aus oben beschriebenen Gründen: das
Verhalten des PHP-Wrappers mysql_affected_rows() ist nicht definiert. Es kann heute so
aussehen, aber morgen schon ganz anders.
Im Moment (PHP 4.3.4) ist PHPs mysql_affected_rows() nur eine Kapselung des
mysql_affected_rows() aus der MySQL-Bibliothek. Das kann sich jedoch auch jederzeit
ändern.
Grüße,
CK
Unsere Vorstellungen von der Ewigkeit sind genauso nuetlich wie die Mutmassungen eines Kuehkens ueber die Aussenwelt bevor es die Eierschale aufbricht.