CRMEF OUJDA Année universit
Filière Informatiques
Y. Derfoufi ...................... TP : Python et les bases de données SQLite3 ....................
1 Installation de SQLite3
1. Accédez à la page de téléchargement de SQLite3 [Link] téléchargez depuis la section
Windows, les fichiers binaires précompilés compressés [Link] et [Link]
2. Créez un dossier "C :\sqlite" et décompressez les deux fichiers zip dans ce dossier, ce qui vous donnera les fichiers
[Link], [Link] et [Link].
3. Ajoutez "C :\sqlite" dans votre variable d’environnement PATH, puis accédez à ce répertoire via à l’invite de commande
et exécutez la commande sqlite3, qui devrait afficher un résultat similaire à celui présenté ci-dessous :
2 Création et manipulation des bases de données et des tables SQLite
2.1 Création des bases de données et tables SQLite
1 - Créer maintenant une base de donnée en tapant la commande :
1 s q l i t e > . open mabase . db
A ce moment là une base nommée [Link] est crée et est sélectionnée par l’interpreteur [Link]
2 - Créer maintenant une table en utilisant la commande :
1 s q l i t e > c r e a t e t a b l e s t u d e n t s ( id i n t e g e r primary key a u t o i n c r e m e n t , nom t e x t , e m a i l t e x t , age f l o a t ) ;
2.2 Insertion et sélection de données
3 - Insérer des des données en utilisant la commande :
1 s q l i t e > i n s e r t i n t o s t u d e n t s (nom , e m a i l , age ) v a l u e s ( ’ N a j i b ’ , ’ n a j i b @ g m a i l . com ’ , 2 0 ) ;
4 - Afficher les données de la table students en utilisant la commande :
1 s q l i t e > SELECT ∗ FROM s t u d e n t s ;
5 - Select where, select limit, select order by ...
1 s q l i t e > s e l e c t ∗from s t u d e n t s where nom = ’ v a l e u r ’ ;
2 s q l i t e > s e l e c t ∗from s t u d e n t s l i m i t i , j ;
3 s q l i t e > s e l e c t ∗from s t u d e n t s o r d e r by id d e s c ;
6 - Afficher le schema de la table en tapant la commande :
1 s q l i t e > . schema s t u d e n t s
6 - Afficher le header et les colonnes
1 s q l i t e > . h e a d e r s on
2 s q l i t e > . mode column
3 s q l i t e > s e l e c t ∗from s t u d e n t s ;
7 - Mettre un enregistrement à jour
1 s q l i t e > update s t u d e n t s set age = 23 where nom = ’ N a j i b ’ ;
8 - Afficher les données sur feuille Excel
1 sqlite > . excel
2 s q l i t e > SELECT ∗ FROM s t u d e n t s ;
9 - Appliquer les commandes d’altération de la table : rename , add column...
9.1 - Renommer la table
1 s q l i t e > ALTER TABLE s t u d e n t s rename t o t e a c h e r s
9.2 Ajouter un attribut
1 s q l i t e > ALTER TABLE add column a d r e s s e
3 Connexion à une base de donnée SQLite3 avec Python
9 - Créer un fichier Python et importer le module sqlite3 en utilisant la commande import. Créer ensuite un objet Connec-
tion qui pointe vers une base de données nommée [Link] :
1 import s q l i t e 3
2 conn = s q l i t e 3 . c o n n e c t ( ’ mabase . db ’ )
Remarque. importante ! Vous n’êtes pas obligé de créer la base de données [Link], mais elle sera crée automatiquement
dans le même répertoire que le fichier Python !
10 - Créer un objet Cursor
1 # C r é e r un c u r s o r
2 c u r = conn . c u r s o r ( )
11 - Créer une table au sein de la base SQLite3 [Link] en appliquant la méthode execute() de l’objet cursor :
1 # −∗− c o d i n g : u t f −8 −∗−
2 import s q l i t e 3
3 conn = s q l i t e 3 . c o n n e c t ( ’ mabase . db ’ )
4 # C r é e r un c u r s o r
5 c u r = conn . c u r s o r ( )
6 # C r é a t i o n de l a r e q u e t e
7 r e q = "CREATE TABLE s t u d e n t s ( i d INTEGER PRIMARY KEY AUTOINCREMENT, nom TEXT NOT NULL, e m a i l TEXT NOT
NULL, age f l o a t ) "
8 # E x é c u t i o n de l a r e q u e t e
9 cur . execute ( req )
10 # Envoyer l a r e q u e t e
11 conn . commit ( )
12 # Fermer l a c o n n e x i o n
13 conn . c l o s e
12 - Insérer des données sur la table students
1 # I n s é r e r une l i g n e de donn ée s
2 c u r . e x e c u t e ( "INSERT INTO s t u d e n t s ( ‘ nom ‘ , ‘ e m a i l ‘ ) VALUES ( ’ A l b e r t ’ , ’ a l b e r t @ g m a i l . com ’ , 2 7 ) " )
3 # Commettre ou e n g a g e r l e s donn ée s
4 conn . commit ( )
13 - Insérer des données variables en utilisant le formatage de la requete à l’aide du symbol ’ ?’
1 # −∗− c o d i n g : u t f −8 −∗−
2 import s q l i t e 3
3 conn = s q l i t e 3 . c o n n e c t ( ’ mabase . db ’ )
4 nom = ’ David ’
5 e m a i l = ’ david@gmail . com ’
6 age = 22
7 # C r é e r un c u r s o r
8 c u r = conn . c u r s o r ( )
9 c u r . e x e c u t e ( " I n s e r t i n t o s t u d e n t s (nom , e m a i l , age ) v a l u e s ( ? , ? , ? ) " , ( nom , e m a i l , age ) )
10 conn . commit ( )
11 conn . c l o s e ( )
13 - Affichage des données SQLite3
13.1 - Créer un cursor et exécuter une requête de sélection
1 c u r = conn . c u r s o r ( )
2 r e s u l t = c u r . e x e c u t e ( " s e l e c t ∗ from s t u d e n t s " )
13.2 - Parcourir les résultats de la sélection :
1 f o r row in r e s u l t :
2 print ( " ID : " , row [ 0 ] )
3 print ( "nom : " , row [ 1 ] )
4 print ( " Email : " , row [ 2 ] )
5 print ( " Age : " , row [ 3 ] )
14 - Télécharger et installer DB Browser for SQLite via le lien
1. Téléchargez DB Browser for SQLite,
2. Depuis le menu File –> cliquez sur le sous menu Open Databse et sélectionnez ensuite votre base de donnée [Link]
3. Cliquez finalement sur Browse data pour voir votre table students avec les donnée que vous venez dinsérer :