示例#1
0
VS($res->fetcharray(SQLITE3_NUM), array("DEF"));
$stmt = $db->prepare("SELECT * FROM foo WHERE bar = :id");
VS($stmt->paramcount(), 1);
$id = "DEF";
VERIFY($stmt->bindvalue(":id", $id, SQLITE3_TEXT));
$id = "ABC";
$res = $stmt->execute();
VS($res->fetcharray(SQLITE3_NUM), array("DEF"));
VERIFY($stmt->clear());
VERIFY($stmt->reset());
$id = "DEF";
VERIFY($stmt->bindparam(":id", $id, SQLITE3_TEXT));
$id = "ABC";
$res = $stmt->execute();
VS($res->fetcharray(SQLITE3_NUM), array("ABC"));
VERIFY($db->createfunction("tolower", "lower", 1));
$res = $db->query("SELECT tolower(bar) FROM foo");
VS($res->fetcharray(SQLITE3_NUM), array("abc"));
VERIFY($db->createaggregate("sumlen", "sumlen_step", "sumlen_fini", 1));
$res = $db->query("SELECT sumlen(bar) FROM foo");
VS($res->fetcharray(SQLITE3_NUM), array(6));
// Since minor version can change frequently, just test the major version
VS($db->version()['versionString'][0], "3");
VERIFY((int) $db->version()['versionNumber'] > (int) 3000000);
$db->close();
unlink(":memory:test");
// Check that a PHP Exception is thrown for nonexistant databases
try {
    new SQLite3('/' . uniqid('random', true) . '/db');
} catch (Exception $e) {
    var_dump(true);