SQLite PDO numRows problem

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
I keep getting "function not defined" when trying to get a result
count on my queries ("numRows()") and dont see a bug report on PHP.net
on this matter. And yes, my queries DO have results.
Any idea why I get that message ?

I followed example 2332 on PHP.net, but no luck. (http://www.php.net/
Im using PHP 5.1.4 and SQLite Library 3.2.8undefined (PDO).

Re: SQLite PDO numRows problem

Quoted text here. Click to load it

PDO? ->

It should work as long as either you use $object->numRows() and $object is  
of the class SQLiteResult (var_dump() the thing to find out), or with  
sqlite_num_rows($result) where $result is a resource (once again,  
var_dump() the thing to find out).
Rik Wasmus

Re: SQLite PDO numRows problem

Kim schrieb:
Quoted text here. Click to load it

First of all, you are using non-PDO functions in a PDO context. And
then, even rowCount won't help you because for most backend it only
tells you how many rows were AFFECTED by your query (INSERT, UPDATE,
...) not the number of rows that were RETURNED (SELECT). PDO does not
feature any numrows-capabilities, even if the backend does. You have to
resort to one of two solutions:

1. Use fetchAll() followed by count(). Be warned that this fetches ALL
of the query result into PHP meory which can cause serious performance
and/or memory problems for large result sets.

2. Use a COUNT(*) variant of your other query to get the number of
results. Once you work with large result sets you would have done
something like this anyway because you would start implementing some
kind of paging through the result.


Hoshi: "Shouldn't we try to help them?"
T'Pol: "They don't want our help."
Hoshi: "How do you know?"
T'Pol: "They're Klingons."

Re: SQLite PDO numRows problem

I ended up with using 2 queries, first one giving only a count result
(FetchColumn) and the second to give the actual content (loop with

I never got PHP to create a SQLite PDO object, and I had enabled both
required dlls (php_pdo.dll and php_pdo_sqlite.dll) in php.ini.

OLLi: Exactly how am I not using non-PDO functions ?  numRows() is
listed as a PDO function on www.php.net.

Quoted text here. Click to load it

Re: SQLite PDO numRows problem

Quoted text here. Click to load it

Show us the URL.... it isn't.
Rik Wasmus

Site Timeline