|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2008-10-28 22:09 UTC] jani@php.net
[2008-11-04 20:27 UTC] aragon at phat dot za dot net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Nov 07 14:00:02 2025 UTC |
Description: ------------ When executing an UPDATE query to a SQLite3 database, PDOStatement::rowCount() and PDO:exec() returns 0 instead of 1 or more when rows are updated in the database. Reproduce code: --------------- $db = new PDO('sqlite:crnl.db'); // PDO::exec() example $sql = 'SELECT tags FROM blog_entries WHERE docid = 1'; $statement = $db->query($sql); $row = $statement->fetch(); echo $row[0], "\n"; $sql = 'UPDATE blog_entries SET tags = \'test\' WHERE docid = 1'; echo $db->exec($sql), "\n"; $sql = 'SELECT tags FROM blog_entries WHERE docid = 1'; $statement = $db->query($sql); $row = $statement->fetch(); echo $row[0], "\n"; // PDO:rowCount() example $sql = 'UPDATE blog_entries SET tags = \'untest\' WHERE docid = 1'; echo $db->query($sql)->rowCount(), "\n"; $sql = 'SELECT tags FROM blog_entries WHERE docid = 1'; $statement = $db->query($sql); $row = $statement->fetch(); echo $row[0], "\n"; Expected result: ---------------- untest 1 test 1 untest Actual result: -------------- untest 0 test 0 untest