[odbc] odbc_num_rows

kesnw

Erfahrenes Mitglied
Hi,

ich greife mit odbc_connect() auf eine MSSQL DB zu. Leider liefert mir odbc_num_rows() immer das Ergebnis -1. Gibt es einen Treiber bei dem dieser Befehl das korrekte Ergebnis liefert? Welche Alternativen habe ich?
 
Danke schonmal.

Wenn ich das so mache...

PHP:
$query = "SELECT COUNT(*) FROM <my database name>";
$result = odbc_exec($dbc, $query);
odbc_fetch_into($result, $count, 1);

... und $count ausgebe wird "Array" ausgegeben. Wie bekomme ich jetzt die Anzahl der Zeilen?
 
Nur kopieren ist angenehm, hilft aber nicht viel wenn man öfters auf solch ein Problem trifft.

Der komplette Beitrag sah so aus:
Quick and easy way to return the number of rows:

$query = "SELECT COUNT(*) FROM <my database name>";
$result = odbc_exec($dbc, $query);
odbc_fetch_into($result, $count, 1);

where:

$dbc = connection_id
$count = the total number of rows
Die letzte Zeile solltest du dir mal zu Gemüt führen.

Und der ersten Link hab ich dir daher gegeben:
odbc_num_rows() liefert die Anzahl Zeilen eines ODBC-Abfrageergebnisses. Tritt ein Fehler auf, ist sie -1. Bei INSERT, UPDATE und DELETE-Befehlen wird die Zahl der betroffenen Zeilen zurückgegeben. Bei einer SELECT-Abfrage kann dies die Anzahl der vorhanden Zeilen sein.
 
Da steht aber auch:

Anmerkung: Bei vielen Treibern wird -1 als Anzahl möglicher Zeilen nach einem SELECT-Befehl zurückgeliefert.

Ich hab das so verstanden dass mir

PHP:
$query = "SELECT COUNT(*) FROM <my database name>";
$result = odbc_exec($dbc, $query);
odbc_fetch_into($result, $count, 1);

die Zeilananzahl in die Variable $count lädt und ich dann so drauf zugreifen kann. Aber wie?
 
Da steht folgendes:

Code:
Array ( [0] => selkek [1] => GXPM [2] => 01000 )

also der Inhalt einer Zeile und NICHT die Anzahl der Zeilen.

Kann mir wirklich niemand weiterhelfen? Gibts da keinen Einzeiler Ich verzweifle...
 
Zurück