2. LocalStorage
Les requêtes et commandes SQL qui viennent d'être présentées ne sont pas utilisables
telles quelles dans une application Qt Quick : elles sont passées en argument à des
méthodes JavaScript, qui se chargent de leur exécution sur la base de données à travers
le moteur SQLite.
La première étape consiste à créer une connexion vers la base de données avec la
méthode LocalStorage.openDatabaseSync. Pour ce faire, deux paramètres sont
essentiels : le nom de cette base de données (par exemple, BiblioApp), puis un numéro
de version pour la base de données, qui sert à gérer les changements dans les
définitions des tables. Deux autres paramètres sont demandés : une description de la
base de données ainsi qu'une taille (en octets) ; aucun des deux n'est actuellement
utilisé par Qt Quick (ils sont simplement recopiés dans un fichier de configuration pour
référence future).
var name = "BiblioApp"; // Nom
var ver = "1.0"; // Version
var desc = "BiblioApp SQL database"; // Description
var size = 1000000; // Taille
var db = LocalStorage.openDatabaseSync(name, ver, desc, size);
Note > Il n'est pas possible de supprimer ou de lister les bases de données créées
par le module LocalStorage ! Les bases de données sont stockées à un endroit qui
dépend de la plateforme :
C:\Users\Utilisateur\AppData\Local\Application\QML\OfflineStorage\Databases\
sous Windows,
/home/Utilisateur/.local/share/Application/QML/OfflineStorage/Databases
sous Linux, /Users/Utilisateur/Library/Application
Support/Application/QML/OfflineStorage/Databases sous macOS.
Le nom de l'application correspond à la commande exécutée pour lancer le code
Qt Quick. Par exemple, depuis Qt Creator, il correspond au nom du projet ; si le
lanceur est codé en Python et lancé comme un script Python (avec une commande
comme python main.py), ce nom d'application sera python.
Lors de l'initialisation de cet objet db, la méthode openDatabaseSync peut prendre un
cinquième et dernier argument : une fonction, souvent anonyme , appelée uniquement
pour créer la base de données. Cette fonction anonyme prend en argument la base de
données en cours de création. Il faut alors lancer une transaction par la méthode
361
Les requêtes et commandes SQL qui viennent d'être présentées ne sont pas utilisables
telles quelles dans une application Qt Quick : elles sont passées en argument à des
méthodes JavaScript, qui se chargent de leur exécution sur la base de données à travers
le moteur SQLite.
La première étape consiste à créer une connexion vers la base de données avec la
méthode LocalStorage.openDatabaseSync. Pour ce faire, deux paramètres sont
essentiels : le nom de cette base de données (par exemple, BiblioApp), puis un numéro
de version pour la base de données, qui sert à gérer les changements dans les
définitions des tables. Deux autres paramètres sont demandés : une description de la
base de données ainsi qu'une taille (en octets) ; aucun des deux n'est actuellement
utilisé par Qt Quick (ils sont simplement recopiés dans un fichier de configuration pour
référence future).
var name = "BiblioApp"; // Nom
var ver = "1.0"; // Version
var desc = "BiblioApp SQL database"; // Description
var size = 1000000; // Taille
var db = LocalStorage.openDatabaseSync(name, ver, desc, size);
Note > Il n'est pas possible de supprimer ou de lister les bases de données créées
par le module LocalStorage ! Les bases de données sont stockées à un endroit qui
dépend de la plateforme :
C:\Users\Utilisateur\AppData\Local\Application\QML\OfflineStorage\Databases\
sous Windows,
/home/Utilisateur/.local/share/Application/QML/OfflineStorage/Databases
sous Linux, /Users/Utilisateur/Library/Application
Support/Application/QML/OfflineStorage/Databases sous macOS.
Le nom de l'application correspond à la commande exécutée pour lancer le code
Qt Quick. Par exemple, depuis Qt Creator, il correspond au nom du projet ; si le
lanceur est codé en Python et lancé comme un script Python (avec une commande
comme python main.py), ce nom d'application sera python.
Lors de l'initialisation de cet objet db, la méthode openDatabaseSync peut prendre un
cinquième et dernier argument : une fonction, souvent anonyme , appelée uniquement
pour créer la base de données. Cette fonction anonyme prend en argument la base de
données en cours de création. Il faut alors lancer une transaction par la méthode
361
