ajout dossier sql
150
SQL/README.md
Normal file
@@ -0,0 +1,150 @@
|
||||
# TP : Introduction au langage SQL avec DB Browser for SQLite
|
||||
|
||||
Ce TP vous guidera à travers la création et la manipulation d'une base de données en utilisant le logiciel **DB Browser for SQLite**. Vous apprendrez à créer des tables, insérer des données et exécuter des requêtes SQL pour interroger la base de données.
|
||||
|
||||
## Prérequis
|
||||
|
||||
- Télécharger et installer [DB Browser for SQLite](https://sqlitebrowser.org/).
|
||||
|
||||
## Activité 3.1 : Création d'une base de données
|
||||
|
||||
1. **Lancer DB Browser for SQLite**. Vous devriez obtenir l'écran suivant :
|
||||
|
||||

|
||||
|
||||
2. **Créer une nouvelle base de données** :
|
||||
|
||||
- Cliquez sur "Nouvelle base de données".
|
||||
- Nommez votre base de données, par exemple `db_livres.db`.
|
||||
- Vous verrez la fenêtre suivante :
|
||||
|
||||

|
||||
|
||||
- Cliquez sur "Annuler" pour fermer cette fenêtre.
|
||||
|
||||
3. **Vérifier la création de la base de données** :
|
||||
- Votre base de données est créée mais ne contient pas encore de tables.
|
||||
|
||||

|
||||
|
||||
## Activité 3.2 : Création d'une table
|
||||
|
||||
1. **Accéder à l'onglet "Exécuter le SQL"** :
|
||||
|
||||
- Cliquez sur l'onglet "Exécuter le SQL".
|
||||
|
||||
2. **Créer la table `LIVRES`** :
|
||||
- Dans la fenêtre "SQL 1", saisissez la requête suivante :
|
||||
|
||||
```sql
|
||||
CREATE TABLE LIVRES (
|
||||
id INT PRIMARY KEY,
|
||||
titre TEXT,
|
||||
auteur TEXT,
|
||||
ann_publi INT,
|
||||
note INT
|
||||
);
|
||||
```
|
||||
|
||||
- Cliquez sur le triangle vert (ou appuyez sur F5) pour exécuter la requête.
|
||||
- Un message "Requête exécutée avec succès" devrait apparaître.
|
||||
|
||||

|
||||
|
||||
## Activité 3.3 : Insertion de données
|
||||
|
||||
1. **Insérer des enregistrements dans la table `LIVRES`** :
|
||||
|
||||
- Toujours dans l'onglet "Exécuter le SQL", saisissez la requête suivante :
|
||||
|
||||
```sql
|
||||
INSERT INTO LIVRES (id, titre, auteur, ann_publi, note) VALUES
|
||||
(1, '1984', 'Orwell', 1949, 10),
|
||||
(2, 'Dune', 'Herbert', 1965, 8),
|
||||
(3, 'Fondation', 'Asimov', 1951, 9),
|
||||
(4, 'Le meilleur des mondes', 'Huxley', 1931, 7),
|
||||
(5, 'Fahrenheit 451', 'Bradbury', 1953, 7),
|
||||
(6, 'Ubik', 'K.Dick', 1969, 9),
|
||||
(7, 'Chroniques martiennes', 'Bradbury', 1950, 8),
|
||||
(8, 'La nuit des temps', 'Barjavel', 1968, 7),
|
||||
(9, 'Blade Runner', 'K.Dick', 1968, 8),
|
||||
(10, 'Les Robots', 'Asimov', 1950, 9),
|
||||
(11, 'La Planète des singes', 'Boulle', 1963, 8),
|
||||
(12, 'Ravage', 'Barjavel', 1943, 8),
|
||||
(13, 'Le Maître du Haut Château', 'K.Dick', 1962, 8),
|
||||
(14, 'Le monde des Ā', 'Van Vogt', 1945, 7),
|
||||
(15, 'La Fin de l’éternité', 'Asimov', 1955, 8),
|
||||
(16, 'De la Terre à la Lune', 'Verne', 1865, 10);
|
||||
```
|
||||
|
||||
- Exécutez la requête en cliquant sur le triangle vert ou en appuyant sur F5.
|
||||
- Un message de confirmation devrait apparaître.
|
||||
|
||||

|
||||
|
||||
2. **Vérifier les données insérées** :
|
||||
- Cliquez sur l'onglet "Parcourir les données" pour voir les enregistrements ajoutés.
|
||||
|
||||

|
||||
|
||||
## Activité 3.4 : Exécution de requêtes SQL
|
||||
|
||||
1. **Sélectionner tous les enregistrements** :
|
||||
- Dans l'onglet "Exécuter le SQL", saisissez la requête suivante :
|
||||
|
||||
```sql
|
||||
SELECT id, titre, auteur, ann_publi, note FROM LIVRES;
|
||||
```
|
||||
|
||||
- Exécutez la requête. Vous devriez obtenir tous les enregistrements de la table `LIVRES`.
|
||||
|
||||

|
||||
|
||||
2. **Sélectionner des colonnes spécifiques** :
|
||||
- Pour obtenir uniquement les titres et auteurs des livres, utilisez la requête :
|
||||
|
||||
```sql
|
||||
SELECT titre, auteur FROM LIVRES;
|
||||
```
|
||||
|
||||
3. **Filtrer les enregistrements** :
|
||||
- Pour obtenir les livres écrits par Asimov, utilisez :
|
||||
|
||||
```sql
|
||||
SELECT titre, ann_publi FROM LIVRES WHERE auteur = 'Asimov';
|
||||
```
|
||||
|
||||
4. **Combiner des conditions** :
|
||||
- Pour obtenir les livres d'Asimov publiés après 1953 :
|
||||
|
||||
```sql
|
||||
SELECT titre, ann_publi FROM LIVRES WHERE auteur = 'Asimov' AND ann_publi > 1953;
|
||||
```
|
||||
|
||||
5. **Trier les résultats** :
|
||||
- Pour trier les livres de K.Dick du plus ancien au plus récent :
|
||||
|
||||
```sql
|
||||
SELECT titre FROM LIVRES WHERE auteur = 'K.Dick' ORDER BY ann_publi;
|
||||
```
|
||||
|
||||
|
||||
|
||||
6. Écrivez et testez une requête permettant d'obtenir uniquement les titres des livres écrits par Philip K.Dick.
|
||||
|
||||
7. Saisissez et testez la requête SQL suivante :
|
||||
|
||||
```sql
|
||||
SELECT titre, ann_publi
|
||||
FROM LIVRES
|
||||
WHERE auteur='Asimov' AND ann_publi>1953
|
||||
```
|
||||
|
||||
Vérifiez que nous obtenons bien le livre écrit par Asimov publié après 1953.
|
||||
|
||||
8. Écrivez une requête permettant d'obtenir les titres des livres publiés après 1945 qui ont une note supérieure ou égale à 9.
|
||||
|
||||
9. Écrivez une requête SQL permettant d'obtenir les livres de K.Dick classés du plus ancien au plus récent.
|
||||
|
||||
10.
|
||||
|
||||
BIN
SQL/assets/1.png
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
SQL/assets/2.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
SQL/assets/3.png
Normal file
|
After Width: | Height: | Size: 67 KiB |
BIN
SQL/assets/4.png
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
SQL/assets/5.png
Normal file
|
After Width: | Height: | Size: 81 KiB |
BIN
SQL/assets/6.png
Normal file
|
After Width: | Height: | Size: 99 KiB |
BIN
SQL/assets/7.png
Normal file
|
After Width: | Height: | Size: 110 KiB |
BIN
SQL/assets/8.png
Normal file
|
After Width: | Height: | Size: 97 KiB |