Fonctions SQLiteSQLite
&reftitle.intro;
Cette extension fait l'interface avec le moteur de base
SQLite Embeddable SQL Database Engine.
SQLite est une bibliothèque C qui
implémente un moteur de base de données SQL embarqué.
Les programmes qui utilisent SQLite
peuvent disposer d'un accès à une base de données SQL, sans avoir à
faire tourner d'autre processus serveur.
SQLite n'est pas un logiciel client pour se
connecter à un grand nom des bases de données. SQLite
est le serveur. La bibliothèque SQLite
lit et écrit directement dans les fichiers de bases de données
sur le disque.
Pour plus d'informations sur SQLite, voyez
le site web &url.sqlite;.
Installation
Lisez le fichier d'installation, qui est fourni avec la distribution.
Ou bien, utilisez simplement l'installeur PEAR :
pear install sqlite.
SQLite est déjà fourni avec &php; et vous
n'avez pas besoin de télécharger d'autres logiciels.
Les utilisateurs de Windows peuvent télécharger la version DLL de l'extension
SQLite ici :
php_sqlite.dll.
Dans la version 5 de &php;, l'extension SQLite ainsi que le moteur sont intégrés et
compilés par défaut.
Installation sur Windows pour les comptes sans privilèges
Sur les systèmes d'exploitation Windows, les comptes sans privilèges
n'ont pas la variable d'environnement TMP
d'initialisée par défaut. Cela fera créer des fichiers temporaires par
sqlite dans le dossier de windows, ce qui n'est pas voulu. Alors, vous
devriez initialiser la variable d'environnement TMP
pour le serveur web ou dans le compte utilisateur où le serveur web
fonctionne. Si Apache est votre serveur web, vous pouvez accomplir cela
via une directive SetEnv dans votre fichier
&httpd.conf;. Par exemple :
Si vous êtes incapable d'établir cette configuration à ce niveau du
serveur, vous pouvez implémenter cette configuration dans votre script :
La configuration doit référer à un répertoire que le serveur web a la
permission de créer des fichiers à l'intérieur et bien sûr d'y écrire et
supprimer les fichiers créés.
Autrement, vous recevrez le message d'erreur suivant :
malformed database schema -
unable to open a temporary database file for storing temporary tables
&reftitle.required;
Afin de disposer de ces fonctions, vous devez compiler &php;
avec le support SQLite, ou charger
dynamiquement l'extension SQLite depuis
votre fichier &php.ini;.
&reftitle.resources;
Il y a deux ressources, utilisées par l'extension SQLite.
La première est une connexion à la base et
la seconde est un résultat de requête.
&reference.sqlite.constants;
&reftitle.classes;
SQLiteDatabase
Représente une base de données SQLite ouverte.
&reftitle.constructor;
__construct - construit un nouvel
objet SQLiteDatabase
&reftitle.methods;
query - Exécute une
requêtequeryExec - Exécute une requête de
résultatarrayQuery - Exécute une
requête et retourne les résultats dans un tableausingleQuery - Exécute une
requête et retourne soit un tableau pour une seule colonne, soit la valeur de la
première ligneunbufferedQuery -
Exécute une requête non buffériséelastInsertRowid -
Retourne l'identifiant de la dernière ligne inséréechanges - Retourne le
nombre de lignes modifiées par la dernière requêtecreateAggregate -
Enregistre une UDF agregeante pour les requêtes SQLitecreateFunction -
Enregistre une fonction utilisateur "classique" UDF pour SQLitebusyTimeout -
Configure ou désactive le délai d'attente d'une base SQLite occupéelastErorr - Retourne
le dernier code erreur de la dernière erreur rencontréefetchColumnTypes -
Retourne un tableau de types de colonnes depuis une table particulièreSQLiteResult
Représente un jeu de résultats SQLite bufférisé.
&reftitle.methods;
fetch - Récupère la ligne
suivante depuis un jeu de résultats en tant que tableaufetchObject - Récupère
la ligne suivant depuis un jeu de résultat en tant qu'objetfetchSingle - Récupère la
première ligne depuis le jeu de résultats en tant que chaîne de caractèresfetchAll - Récupère toutes les
lignes depuis le jeu de résultats en tant que tableau de tableauxcolumn - Récupère une colonne
depuis la ligne courante du jeu de résultatsnumFields - Retourne
le numéro du champs depuis un jeu de résultatsfieldName - Retourne
le nom d'un champs particulier depuis le jeu de résultatscurrent - Récupère la ligne
courante depuis le jeu de résultat en tant que tableaukey - Retourne l'index de la ligne
courantenext - Déplace le pointeur
sur le numéro de ligne suivantevalid - Retourne si oui ou non
il reste des lignes de disponiblesrewind - Déplace le pointeur
sur le numéro de la première ligne d'un jeu de résultsprev - Déplace le pointeur
sur le numéro de ligne précédent du jeu de résultatshasPrev - Retourne si oui ou
non une ligne précédente est disponiblenumRows - Retourne le
nombre de lignes dans le jeu de résultatsseek - Déplace le pointeur
vers un numéro de lignes précisSQLiteUnbuffered
Représente un jeu de résultats SQLite non-bufférisé. Les jeux de résultats
non-bufférisés sont séquentiels, déplacement du pointeur uniquement vers
le numéro suivant.
&reftitle.methods;
fetch - Récupère
la ligne suivante depuis un jeu de résultats en tant que tableaufetchObject - Récupère
la ligne suivante depuis un jeu de résultats en tant qu'objetfetchSingle - Récupère
la première colonne depuis un jeu de résultats en tant que chaîne de caractèresfetchAll - Récupère toutes les
lignes depuis le jeu de résultats en tant que tableau de tableauxcolumn - Récupère une colonne
depuis la ligne courante d'un jeu de résultatsnumFields - Retourne
le nombre de champs dans le jeu de résultatsfieldName - Retourne le
nom d'un champs en particulier depuis le jeu de résultatscurrent - Récupère la ligne
courante depuis le jeu de résultats en tant que tableaunext - Déplace le pointeur
vers un numéro de ligne suivantvalid - Retourne si oui ou non
il reste des lignes de disponibles
&reference.sqlite.ini;
&reference.sqlite.functions;