You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: inst/tutorials/B09La_db/B09La_db.Rmd
+8-7Lines changed: 8 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -73,6 +73,7 @@ Parmi les différents types de bases de données, nous allons nous intéresser a
73
73
- créer une base de données relationnelle
74
74
- normaliser les données dans votre base
75
75
- réaliser le schéma d'une base de données
76
+
- effectuer une requête dans la base de données
76
77
77
78
## Base de données et normalisation
78
79
@@ -82,7 +83,7 @@ Le tableau de données présenté est inspiré des travaux de fin d'étude de Be
82
83
83
84
> Benrezkallah J. 2022. Effet des facteurs pédologiques sur les communautés d'abeilles sauvages dans les potagers de la commune de Mons. Mémoire de Master 2 en Sciences biologiques, Université de Mons, Mons, 127 pp.
84
85
85
-
Cette étude a né&cessité la collecte de nombreuses données que le chercheur souhaite gérer sous la forme d'une base de données relationnelle. Aidez ce dernier dans la mise en place de cette base. Les dix premières lignes du jeu de données sont présentées ci-dessous.
86
+
Cette étude a nécessité la collecte de nombreuses données que le chercheur souhaite gérer sous la forme d'une base de données relationnelle. Aidez ce dernier dans la mise en place de cette base. Les dix premières lignes du jeu de données sont présentées ci-dessous.
86
87
87
88
```{r, echo=TRUE}
88
89
head(bees, 10)
@@ -113,7 +114,7 @@ quiz(
113
114
random_answer_order = TRUE,
114
115
correct = "Ce tableau correspond bien à un format cas par variable. Il est donc possible de l'utiliser dans une base de données. Il n'est cependant pas normalisé."
115
116
),
116
-
question("Sélectionnez parmi les variables suivantes celles présentant de la redondance optimisable via normalisation niveau 3.",
117
+
question("Sélectionnez parmi les variables suivantes celles présentant de la redondance optimisable via normalisation niveau 3 (déependance transitive).",
117
118
answer("country", correct = TRUE, , message = "Il n'est pas utile de répliquer le nom de pays d'une station pour chaque collecte."),
118
119
answer("localisation", correct = TRUE, message = "Il n'est pas utile de répliquer les coordonnées d'une station pour chaque collecte."),
119
120
answer("id", message = "La variable 'id' est un identifiant unique pour chaque individu collecté. Cette variable n'est pas redondante."),
@@ -124,7 +125,7 @@ quiz(
124
125
125
126
## Base de données et schéma
126
127
127
-
Suite à votre exploration du tableau `bees`, vous avez pu observer une certaine redondance dans les données. Deux tables sont réalisées afin de limiter cette redondance (normalisation au niveau 3). Vous pouvez observer qu'une colonne 'id_station' a été ajoutée.
128
+
Suite à votre exploration du tableau `bees`, vous avez pu observer que son schéma peut être optimisé. Deux tables sont réalisées afin d'assurer une normalisation au niveau 3 de la base. Vous pouvez observer qu'une colonne 'id_station' a été ajoutée.
128
129
129
130
```{r, echo=TRUE}
130
131
head(stations)
@@ -176,7 +177,7 @@ dbListTables(bees_db)
176
177
grade_code("Vous venez de créer une base de données en mémoire avec deux tables.")
177
178
```
178
179
179
-
Il a présent temps de lier ces deux tables par l'intermédiaire de clés. Vous allez pour ce faire employer le package {dm}.
180
+
Il est à présent temps de dé"finir des clés pour ces deux tables. Vous allez pour ce faire employer le package {dm}.
180
181
181
182
Créez un objet **dm** associé à votre base de données (`bees_db`) et nommez-le `bees_dm`. Indiquez ensuite que vous voulez utiliser la couleur rouge pour la table `stations` et la couleur orange pour la table `captures`. Terminez par visualiser le schéma de la base en l'état.
grade_code("Vous avez un objet dm. La visualition de l'objet vous permet d'observer vos deux tables. Actuellement, les clés primaires et les clés étrangères n'ont pas encore été définie.")
206
207
```
207
208
208
-
Afin de compléter le schéma de votre base de données (niveau 2 de normalisation), définissez une clé primaire pour chaque table.
209
+
Afin de compléter le schéma de votre base de données (finaliser le niveau 1 de normalisation), définissez une clé primaire pour chaque table.
209
210
210
211
```{r pk_h2, exercise=TRUE, paged.print=FALSE}
211
212
# Clés primaires potentielles
@@ -250,7 +251,7 @@ bees_dm1
250
251
grade_code("Votre objet bees_dm1 comprend à présent deux clés primaires, une pour chaque table.")
251
252
```
252
253
253
-
Définissez maintenant une clé étrangère qui fait le lien entre vos deux tables (`captures` et `stations`) en partant de l'objet `bees_dm1` et placer ceci dans `bees_dm2`. Enfin, visualisez le schéma de la base depuis `bees_dm2`.
254
+
Définissez maintenant une clé étrangère qui fait le lien entre vos deux tables (`captures` et `stations`) selon une relation un à plusieurs en partant de l'objet `bees_dm1` et placez le résultat dans `bees_dm2`. Enfin, visualisez le schéma de la base depuis `bees_dm2`.
grade_code("Votre objet bees_dm2 comprend à présent deux clés primaires et une clé étrangère qui lie vos deux tables. La séparation des données en deux tables liées entre elles concrétise la normalisation au niveau 3 visant à éliminer la redondance au sein de la base de données. Le shéma (data model) vous permet de bien visualiser la structure de votre base. Cet objet dm permet ensuite de réaliser des requêtes facilement.")
276
+
grade_code("Votre objet bees_dm2 comprend à présent deux clés primaires et une clé étrangère qui lie vos deux tables. La séparation des données en deux tables liées entre elles vous permet d'obtenir une base de données 3NF. Le schéma (data model) vous permet de bien visualiser la structure de votre base. Cet objet dm permet ensuite de réaliser des requêtes facilement.")
0 commit comments