Exercices avec SQLite
Exercice 1
Indication : les questions de cet exercice se traiteront sur l’émulateur Linux se trouvant à l’adresse :
http ://[Link]
La base de données utilisée est disponible à la racine du dossier personnel de l’utilisateur user. Pour cela, on se logguera sous
cet utilisateur.
On utilisera la base de données contenu dans le fichier [Link]. Cette base contient la table invite qui a été créée par la
commande :
CREATE TABLE invite (id INTEGER PRIMARY KEY AUTOINCREMENT,prenom TEXT,
age INTEGER, poids FLOAT))
On accédera à la base [Link] en lançant la commande : sqlite3 [Link]
Pour chacune des questions, on donnera la réponse mais également la ou les requêtes ayant permis de répondre :
1. Combien d’enregistrement comporte la table invite?
2. Combien d’enregistrement ont l’attribut poids avec une valeur supérieure à 60?
3. Quel est le poids moyen des personnes dont l’age est de 15 ans?
4. En triant l’ensemble des personnes par l’âge, puis par le poids, quel est le nom de la première personne affichée?
Exercice 2
Indication : les questions de cet exercice se traiteront sur l’émulateur Linux se trouvant à l’adresse :
http ://[Link]
La base de données utilisée est disponible à la racine du dossier personnel de l’utilisateur user. Pour cela, on se logguera sous
cet utilisateur.
On utilisera la base de données contenu dans le fichier [Link]. Cette base contient deux tables :
la table table_a contient les trois attributs a, b c
la table table_b contient les trois attributs d, e f
Pour travailler sur cette base, on saisiera en ligne de commande :
sqlite3 [Link]
1. Chacune de ces tables possèdent une clé primaire. Déterminer cet attribut pour chacune de ses tables.
2. La table table_b possède une clé étrangère. Déterminer cet attribut.
Exercice 3
Indication : les questions de cet exercice se traiteront sur l’émulateur Linux se trouvant à l’adresse :
http ://[Link]
La base de données utilisée est disponible à la racine du dossier personnel de l’utilisateur user. Pour cela, on se logguera sous
cet utilisateur.
On utilisera la base de données contenu dans le fichier [Link]. Pour cela, on utilisera en ligne de commande l’instruction :
sqlite3 [Link]
Cette base contient Les quatres tables représentées dans le diagramme ci-dessous :
[Link]
Nom de la table : creneaux Nom de la table : matchs
id_creneau int(11) id_match int(11)
plage_horaire varchar(50) date DATE
#id_creneau int(11)
Nom de la table : terrains #id_terrain int(11)
id_terrain int(11) #id_joueur1 int(11)
nom_terrain varchar(50) #id_joueur2 int(11)
surface varchar(50)
Nom de la table : joueurs
id_joueur int(11)
nom_joueur varchar(50)
prenom_joueur varchar(50)
login varchar(50)
mdp varchar(50)
Les clés primaires de chaque table sont représentées en gras et les clés étrangères sont écrites avec le symbole #.
1. Saisissez l’instruction ci-dessous et justifiez l’erreur produite sur cettte base :
INSERT INTO joueurs VALUES (11,"moi","toi","nous","vous") ;
2. Saisissez l’instruction ci-dessous et justifiez l’erreur produite sur cettte base :
INSERT INTO matchs VALUES (110,"2022-12-04",20,1,12,15) ;
3. Quelle instruction doit-on écrire pour obtenir toutes les dates où un match sur la surface “terre batue” s’est déroulé?
4. Quelle instruction permet d’Afficher les couples de noms de joueurs ayant occupé un terrain pendant la plage horaire “8h-9h”.
[Link]