SQLite3::prepare

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

SQLite3::preparePrepares an SQL statement for execution

Description

public SQLite3::prepare(string $query): SQLite3Stmt|false

Prepares an SQL statement for execution and returns an SQLite3Stmt object.

Parameters

query

The SQL query to prepare.

Return Values

Returns an SQLite3Stmt object on success or false on failure.

Examples

Example #1 SQLite3::prepare() example

<?php
unlink
('mysqlitedb.db');
$db = new SQLite3('mysqlitedb.db');

$db->exec('CREATE TABLE foo (id INTEGER, bar STRING)');
$db->exec("INSERT INTO foo (id, bar) VALUES (1, 'This is a test')");

$stmt = $db->prepare('SELECT bar FROM foo WHERE id=:id');
$stmt->bindValue(':id', 1, SQLITE3_INTEGER);

$result = $stmt->execute();
var_dump($result->fetchArray());
?>

See Also

add a note add a note

User Contributed Notes 1 note

up
3
Venkata Subbaraju
8 years ago
Without checking the return value of "prepare" if "exec" is used then it will cause Fatal Error.

"PHP Fatal error:  Call to a member function execute() on a non-object "

To avoid this error,need to check return value as following:

<?php
$db
= new SQLite3('school.db');
if(
$stmt = $db->prepare('SELECT id,student_name FROM classTen '))
{
        
$result = $stmt->execute();
        
$names=array();
         while(
$arr=$result->fetchArray(SQLITE3_ASSOC))
         {
         
$names[$arr['id']]=$arr['student_name'];
         }
}
?>
To Top