HEX
Server: nginx/1.24.0
System: Linux localhost 5.15.0-46-generic #49-Ubuntu SMP Thu Aug 4 18:03:25 UTC 2022 x86_64
User: www (1000)
PHP: 8.3.27
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/server/php/83/src/ext/sqlite3/tests/bug73068.phpt
--TEST--
Bug #73068 SQLite3 may fail to DELETE
--EXTENSIONS--
sqlite3
--SKIPIF--
<?php
$version = SQLite3::version()['versionNumber'];
if ($version >= 3011000 && $version < 3014002) die('skip libsqlite 3.11.0 to 3.14.1 exhibit erroneous behavior');
?>
--FILE--
<?php

$db = new \SQLite3(':memory:') ;

$db->exec("CREATE TABLE IF NOT EXISTS t1(a INT UNIQUE, b INT)");
$db->exec("INSERT OR REPLACE INTO t1(a,b) VALUES('1','2')");

$r = $db->query("SELECT * FROM t1 WHERE a='1' AND b='2'");
var_dump($r->fetchArray());

$db->exec("DELETE FROM t1 WHERE a='1' AND b='2'");

$r = $db->query("SELECT * FROM t1;");
var_dump($r->fetchArray());

$db->close();

?>
==OK==
--EXPECT--
array(4) {
  [0]=>
  int(1)
  ["a"]=>
  int(1)
  [1]=>
  int(2)
  ["b"]=>
  int(2)
}
bool(false)
==OK==