BASE DE DONNEES RELATIONNELLES OU

Info 4 / Base de données relationnelles
2013-2014
BASE DE DONNEES
RELATIONNELLES OU
QUEL TEMPS FAIT-IL
?
L’objectif de cette partie de la formation vise à développer les savoir-faire
suivants :
-
I.
recourir aux concepts des bases de données relationnelles ;
traduire les questions posées dans un langage de requête en respectant sa
syntaxe ;
prototyper et créer une base de données simple, à l’aide d’un outil
interactif ;
Consulter/alimenter une base de données à travers des requêtes de type SQL ;
PROBLEMATIQUE
M. Gruat et M. Soleillant sont restés en contact durant la dernière semaine des
vacances de Pâques (du lundi 5 mai au dimanche 11 mai 2014). Ils ont comparés la
météo sur leur lieu respectif de vacances, ils ont trouvé une différence de
température de 2°C et des prépicipations dans un rapport de 90.
Remarque : M. Gruat étant du Sud, on oubliera pas d’appliquer un coefficient
correctif de 10 : 0,2°C et 9.
M. Soleillant a passé ses vacances du coté de Brest mais M. Gruat n’a pas voulu
indiquer son lieu de villégiature.
Fort de ces informations, M. Soleillant aimerait savoir où M. Gruat a passé ses
vacances. Il a dèjà rempli une base de données avec les informations météos
présentes sur le site de méteo France :
https://donneespubliques.meteofrance.fr/?fond=produit&id_produit=90&id_rubrique=32
Mais il n’a pas eu le temps de finir et de traiter ces données. Vous allez l’aider
dans ses recherches.
Pour cela, vous allez :
o
récuperer les données météos manquantes pour le 11 mai 2014 à 21h00 car M
Soleillant n’a pas eu le temps de les incorporer dans la base.
Par exemple, pour le 12 mai 2014 à 3h du matin :
https://donneespubliques.meteofrance.fr/donnees_libres/Txt/Synop/synop20140512030000.csv)
o
visualiser les données météos de la station de Brest : températures et
précipitations durant la semaine qui nous interesse. Vous déterminerez
également la température moyenne et le total des précipitations.
1
Info 4 / Base de données relationnelles
o
o
II.
2013-2014
vous rechercherez les stations dont les données météos coincident avec les
indications de M. Gruat.
Vous supperposerez les données météos des deux stations.
RECUPERATION DES DONNEES METEOS
Pour exploiter facilement ces données, nous allons alimenter une base de donnée
sqlite contenant 3 tables (cette base vous est fournie):
•
•
•
une table contenant les enregistrements météos : tbenregistrements,
une table contenant les stations météos : tbstations,
une table contenant le descriptif des champs : tbunites.
Cette base contient déjà les données météos du 5 mai au 11 mai execption faite des
enregistrements du 11 mai 2014 21h.
Récuperez l’enregistrement manquant et incorporez-le dans notre base de donnée,
en écrivant une fonction python.
III.
VISUALISATION DES DONNEES METEOS DE BREST
a.
SQLite et python
Pour utiliser sqlite dans python :
from sqlite3 import *
# bilbiothèque sqlite
connexion = sqlite3.connect('meteo.db')
# connexion à la BDD
Puis on construit la requête que l’on fait exécuter par SQLite
requete ="SELECT Departement,Commune FROM tbstations ORDER BY Departement "
resultat_requete = connexion.execute(requete)
Le résultat de la requête est un tableau d’élément.
for ligne in resultat_requete:
for colonne in ligne :
print(colonne,end='\t')
print()
# on parcourt les lignes
#
puis les colonnes
b.
La gestion des dates
La base de données contient les « dates » au format TIMESTAMP "YYYYmmddHHMMSS":
o
o
o
o
o
o
Ex :
Quatre chiffres pour l’Année : YYYY
Deux chiffres pour le Mois : mm
Deux chiffres pour le Jour : dd
Deux chiffres pour l’Heure : HH
Deux chiffres pour les Minutes : MM
Deux chiffres pour les Secondes : SS
"20140502152410" : 2 mai 2014 15h24 10 secondes
Pour convertir cette chaine de caractère en une date compréhensible par la fonction
plot_date du module pyplot de matplotlib, on utilise la fonction strptime :
from datetime import datetime
text = "20140502152410"
date = strptime( text, "%Y%m%d%H%M%S")
2
Info 4 / Base de données relationnelles
c.
2013-2014
Travail à faire
Tracez l’évolution de la température et de la pluviométrie pour la station
météo de Brest sur deux graphiques juxtaposés. (On fera particulièrement attention
aux unités)
Déterminez la valeur maxi, moyenne et mini des températures, précipitations
pour les deux stations pour la semaine considérée (du lundi 5 mai 2014 00h au
dimanche 12 mai 2014 21h), placer ces valeurs sur les graphiques précédant.
IV.
RECHERCHE DES STATIONS QUI COÏNCIDENT
Pour chacune des stations météos référencé dans la base de données, calculer
pour cette même période les températures moyennes et le totale des précipitations.
V.
RECHERCHE DES STATIONS QUI COÏNCIDENT
Superposez les l’évolution de la température et de la pluviométrie pour la
station météo de Brest et celle(s) que vous avez trouvée(s).
3