Manuel PHP
Précédent |  | Suivant

# CI. SQLite

# Introduction

Cette extension fait l'interface avec le moteur de base SQLite Embeddable SQL Database Engine. SQLite est une librairie 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 librairie SQLite lit et écrit directement dans les fichiers de bases de données sur le disque.

> Note : Pour plus d'informations sur SQLite, voyez le site web http://sqlite.org/.

# 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.

# Pré-requis

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`.

# Types de ressources

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.

# Constantes prédéfinies

Les fonctions sqlite_fetch_array() et sqlite_current() utilisent des constantes pour spécifier les différents types de résultats. Les constantes sont les suivantes :

Tableau 1. Constantes SQLite

Constante | Signification
--- | ---
`SQLITE_ASSOC` | Les colonnes sont retournées dans le tableau, en utilisant le nom de la colonne comme nom d'index.
`SQLITE_BOTH` | Les colonnes sont retournées dans le tableau, en utilisant simultanément le nom de la colonne comme nom d'index et un index numérique.
`SQLITE_NUM` | Les colonnes sont retournées dans le tableau, en utilisant une indexation numérique. L'index commence à 0, pour identifier le premier champ.

# Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier `php.ini`.

Tableau 2. Options de configuration SQLite

Nom | Par défaut | Modifiable
--- | --- | ---
sqlite.assoc_case | 0 | PHP_INI_ALL

Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à ini_set().

Voici un éclaircissement sur l'utilisation des directives de configuration.

`sqlite.assoc_case` int

  Utilise des index à casse libre (`0`), majuscule (`1`) ou minuscule (`2`).

  Cette option sert principalement lorsque vous avez besoin de la compatibilité avec d'autres systèmes de bases de données, où les noms des colonnes sont toujours retournés en majuscule ou en minuscule, indépendamment de la casse réelle de la colonne dans la base.

  La librairie SQLite retourne le nom de la colonne sans y toucher (c'est la casse qui sera utilisée dans votre base). Lorsque `sqlite.assoc_case` vaut `0` cette casse sera conservée. Lorsque cette option vaut `1` ou `2`, `PHP` va modifier la casse des noms, et mettre le nom de la colonne respectivement en majuscules ou minuscules.

  Utiliser cette option implique une légère perte de performances, mais c'est BEAUCOUP plus rapide que de faire la gestion des caractères vous-même.

Précédent | Sommaire | Suivant
is_soap_fault | Niveau supérieur | sqlite_array_query