Python : pysqlite
Moteur de base de données self-contained (pas de dépendances), sans serveur, sans configuration et transactionnel (toutes les requêtes et tous les changements sont Atomiques, Consistants, Isolés et Durables - ACID) /
- atomique : la transaction est faite complètement ou pas du tout,
- consistante : la transaction ne rend pas la base de données incohérente,
- isolée : l'exécution de plusieurs transactions en parallèle a le même effet que l'exécution en série - l'isolement résulte du contrôle du parallélisme (concurrency)
- durable : une transaction faite le reste, quoi qu'il arrive au système.
Une transaction est une opération unitaire du point de vue fonctionnel : ex. un virement de compte à compte.
Possible d'utiliser une standalone Command Line Interface (TCL interface) pour administrer les bases SQLite.
TCL (Tool Command Language) : langage de script basé sur des commandes.
SQLite peut être utilisé avec tout langage de programmation, mais particulièrement avec TCL : l'API avec TCL consiste en une commande unique : sqlite3 (ouvre la base de données soit sur disque, soit en mémoire, soit comme fichier temporaire )
Toute l'API est expliquée là : tclsqlite.html
Syntaxe SQL : http://www.sqlite.org/lang.html
Structure de TCL : Une commande est une suite de mots séparés par des espaces (terminé par saut de ligne ou ;). Le 1er mot est le nom de la commande, les autres les arguments. wiki