[PHP-DB] excec / query on Sqlite3

2013-05-20 Thread Gilles

Hello,

I'm not sure if it's a bug :

$o_sqlite3=new SQLite3('test.sqlite');

$r=$o_sqlite3-exec('');
echo'pre';var_dump($r);echo'/pre'; // bool(true)

$r=$o_sqlite3-query('');
echo'pre';var_dump($r);echo'/pre';  // bool(false)

$r=$o_sqlite3-exec(false);
echo'pre';var_dump($r);echo'/pre';  // bool(true)

$r=$o_sqlite3-query(false);
echo'pre';var_dump($r);echo'/pre';  // bool(false)


Best,


System Windows NT 5.1 build 2600 (Windows XP Professional Service Pack 
3) i586 WIN XP SP3

PHP Version 5.4.13
SQLite3 module version  0.7
SQLite Library  3.7.7.1

--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DB] excec / query on Sqlite3

2013-05-20 Thread Matijn Woudt
On Mon, May 20, 2013 at 2:35 PM, Gilles g...@live.fr wrote:

 Hello,

 I'm not sure if it's a bug :

 $o_sqlite3=new SQLite3('test.sqlite');

 $r=$o_sqlite3-exec('');
 echo'pre';var_dump($r);echo'**/pre'; // bool(true)

 $r=$o_sqlite3-query('');
 echo'pre';var_dump($r);echo'**/pre';  // bool(false)

 $r=$o_sqlite3-exec(false);
 echo'pre';var_dump($r);echo'**/pre';  // bool(true)

 $r=$o_sqlite3-query(false);
 echo'pre';var_dump($r);echo'**/pre';  // bool(false)



It makes sense in some way, query fails because the query didn't return any
result, exec succeeds because it does not require a result. The query
itself is valid.

- Matijn


[PHP-DB] Re: excec / query on Sqlite3

2013-05-20 Thread B. Aerts

On 20/05/13 14:35, Gilles wrote:

Hello,

I'm not sure if it's a bug :


No, it's not - it's PHP code :-)



$o_sqlite3=new SQLite3('test.sqlite');

$r=$o_sqlite3-exec('');
echo'pre';var_dump($r);echo'/pre'; // bool(true)

$r=$o_sqlite3-query('');
echo'pre';var_dump($r);echo'/pre';  // bool(false)

$r=$o_sqlite3-exec(false);
echo'pre';var_dump($r);echo'/pre';  // bool(true)

$r=$o_sqlite3-query(false);
echo'pre';var_dump($r);echo'/pre';  // bool(false)


Best,


System Windows NT 5.1 build 2600 (Windows XP Professional Service Pack
3) i586 WIN XP SP3
PHP Version 5.4.13
SQLite3 module version 0.7
SQLite Library 3.7.7.1


Tried your code on a MacBook OS X 10.6 with PHP 5.3.15 - same result.

What's your question: the difference in response between exec() and 
query(), or the fact that a non-SQL statement does yield some result - 
albeit a boolean ?


If it's the first one, I think it is intentional:
http://be.php.net/manual/en/sqlite3.exec.php says exec() is meant for 
result-less statements. So as long as something doesn't fail, it's OK.

query() is supposed to return results - if it doesn't, something is wrong.

But that is just my interpretation of the man page.
Is there a problem beneath you're trying to solve ?

Regards,

Bert

--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php