Base de données Flashcards
lesquelles justifient l’utilisation d’une base de données ?
S’abstraire des modalités de stockage physique de l’information.
Minimiser la redondance d’information.
Faciliter la mise à jour de données.
Contrôler la cohérence des données.
Sécuriser l’accès aux données.
Mieux gérer l’accès concurrent aux données.
Sont toutes des bonnes réponses !!
Quels sont les synonymes du mot relation au sens d’une base de données relationnelle ?
table
tableau
lien
association
ami
Table et Lien
Quels sont les synonymes du mot ligne au sens d’une base de données relationnelle ?
propriété
objet
enregistrement
table
Objet ou Enregistrement
Quels sont les synonymes du mot colonne au sens d’une base de données relationnelle ?
valeur
type
propriété
attribut
Propriété
Attribut
Quels sont les synonymes du mot donnée au sens d’une base de données relationnelle ?
colonne
cellule
case
ligne
cellule
case
Quels sont les synonymes du mot domaine au sens d’une base de données relationnelle ?
propriété
type
données
ensemble de valeurs
Type et Ensemble de valeurs
Les étapes de la conception d’une base de données
Cite les mois tous!!!
Analyse de la situation existante et des besoins (clarification).
Création d’un modèle conceptuel de données (MCD) qui permet de représenter tous les aspects importants du problème.
Traduction du modèle conceptuel en modèle logique de données (MLD) qui permet de traduire le problème en structure relationnelle.
Implémentation d’une base de données en SQL dans un SGBD, à partir du modèle logique
Quelles formes seront adéquates pour établir une note de clarification ?
Un document écrit en ligne
Un échange de mail
Des notes gardées pour soi
Des formules mathématiques
Du code informatique
DOC EN LIGNE
Un modèle est :
générique, s’il est bien conçu, il fonctionne dans toutes les situations
spécifique, il est adapté à une classe de situations
Un modèle est :
réaliste, il est le plus proche possible de la réalité
schématique, il représente une abstraction de la réalité
spécifique et schématiques.
Que signifie UML ?
Unified Modeling Langage
Un Moyen Langagier
Unique Méthode Logistique
Unified Modeling Langage
Quel type de diagrammes UML est utilisé pour la modélisation de bases de données ?
Le diagramme de séquence
Le diagramme de classe
Le diagramme d’activité
Le diagramme de classe
Pourquoi utiliser UML pour l’étape de modélisation conceptuelle de bases de données ?
Parce que c’est le seul outil qui existe.
Parce que c’est un outil efficace de communication.
Parce qu’il est proche de l’implémentation finale en bases de données.
UML est un outil de communication efficace pour la modélisation, la formalisation flexible et l’indépendance par rapport aux systèmes d’implémentation, ce qui le rend crucial lors des phases de conception.
Lorsque l’on commence à réaliser la conception en UML, quels sont les outils à privilégier ?
Papier A3 et crayon
Dia
PlantUML
Tableau et feutre
Papier A3 et crayon.
Tableau et feutre.
Explications
On préférera les outils de communication qui laissent le plus de liberté d’expression et qui ne contraignent pas l’usage : le papier et le crayon (ou le tableau et la craie) sont mieux adaptés pour cela.
À ce stade, on préfère faire évoluer la conception rapidement plutôt que de faire des diagrammes parfaitement avec des outils.
Le travail de modélisation vise à représenter la réalité sous une forme de concepts : un modèle. Qu’est-ce qu’un bon modèle ?
C’est un modèle exhaustif, c’est-à-dire un modèle qui prend en compte tous les éléments de la réalité.
C’est un modèle qui tient compte du problème à résoudre et qui représente uniquement l’information propre à ce problème.
C’est un modèle avec peu de classes.
C’est un modèle qui tient compte du problème à résoudre et qui représente uniquement l’information propre à ce problème.
Dans la modélisation, il est possible que des contraintes complexes apparaissent. Dans ce cas :
On ne les fait pas apparaître puisque l’on ne peut pas les représenter facilement : on verra cela à l’implémentation finale.
On les exprime explicitement dans des notes à côtés des concepts concernés.
On les exprime explicitement dans des notes à côtés des concepts concernés.
Explications
On doit toujours faire apparaître dans la modélisation toutes les informations nécessaires de la situation: l’étape de modélisation est la plus importante et les détails manquant en amont causent des problèmes techniques en aval.
Dans le cas où les éléments d’UML ne permettent pas d’ajouter de formaliser la contrainte, on utilise les notes.
Quels sont les concepts propres au relationnel ?
Clé étrangère
Classe
Relation
Association
Clé primaire
Requête
Clé étrangère
Relation
Clé primaire
Pourquoi introduit-on le concept de clé primaire en relationnel ?
On l’introduit pour simplifier l’usage des clés étrangères.
On l’introduit pour pouvoir identifier chaque enregistrement de manière unique.
On l’introduit pour simplifier l’usage des clés étrangères.
Cela évite que chaque clé étrangère ne référence une clé candidate différente ; la clé primaire uniformise le système de référencement.
En relationnel, on peut noter qu’un ensemble d’attributs est une clé en :
Indiquant explicitement cela à côté de sa relation si c’est une clef candidate non primaire.
Indiquant explicitement cela grâce à la clause {unique} pour les attributs concernés.
Indiquant explicitement cela en préfixant les attributs de la clé du caractère # si c’est une clé primaire.
Indiquant explicitement cela à côté de sa relation si c’est une clef candidate non primaire.
Indiquant explicitement cela en préfixant les attributs de la clé du caractère # si c’est une clé primaire.
En relationnel, on indique les références :
En ajoutant pour les champs de la clé étrangère ceux de la clé primaire avec le symbole =>.
En écrivant explicitement ces références à côté de chaque relation.
En ajoutant pour les champs de la clé étrangère ceux de la clé primaire avec le symbole =>.
Quand et pourquoi introduire des clés artificielles dans les relations ?
On introduit des clés artificielles s’il n’existe pas de clé naturelle.
On introduit des clés artificielles systématiquement : cela est plus simple.
On introduit des clés artificielles s’il n’existe pas de clé naturelle.
Explications
L’usage des clés artificielles n’est pas systématique, il dépend du contexte de développement et des données.
Si on décide de systématiser leur usage, on le fera plutôt en SQL, au niveau de l’implémentation ; cela permet de rester concentré sur la recherche des clés naturelles au niveau logique.
Pourquoi introduit-on le concept de clé étrangère ?
Pour gérer le fait qu’une table a en général plusieurs clé candidates.
Pour garantir la validité des références entre tables.
Pour garantir la validité des références entre tables.
Explications
La clé primaire est un concept qui permet de choisir une clé parmi celles qui existent, afin de systématiser le référencement.
SQL ?
SQL (pour langage de requêtes structuré) langage déclaratif pour bases de données
Lorsque l’on a dans le diagramme de conception UML une classe d’association avec une cardinalité “0..N:0..N” on doit :
Mettre en place une relation qui correspond à cette association au sein de laquelle on référence les deux relations associées grâce à deux clefs étrangères.
Intégrer les attributs de la classe d’association dans la relation créée pour transformer la classe d’association.
TOUTES des bonnes réponses !!!
Parmi les assertions suivantes concernant le langage SQL, sélectionner celles qui sont correctes.
1.Le langage SQL permet d’implémenter physiquement un modèle logique exprimé en relationnel.
2 Le langage SQL permet d’entrer et de sortir des données d’une base de données.
3 Le langage SQL permet de donner et d’enlever des droits en lecture sur les données d’une base de données.
4 Le langage SQL permet de donner et d’enlever des droits en écriture sur les données d’une base de données.
5 Le langage SQL permet de créer une interface graphique utilisable par les utilisateurs finaux.
1.2.3.4
SQL permet la mise en œuvre d’un modèle logique relationnel, la saisie et l’extraction de données, ainsi que l’attribution de droits sur les données.
Parmi les types SQL suivants, lesquelles sont des domaines d’entiers ?
INTEGER
TEXT
REAL
INT
DATE
INTERGER Ou INT
Parmi les types SQL suivants, lesquels sont des domaines de nombres réels ?
INTEGER
TIME
REAL
INT
DOUBLE
FLOAT
REAL
DOUBLE
FLOAT
Parmi les types SQL suivants, lesquels sont des domaines de chaîne de caractères ?
VARCHAR
TIME
TEXT
INT
DOUBLE
CHAR
VARCHAR
TEXT
CHAR
On peut ajouter des contraintes d’intégrité :
en définissant des contraintes de colonnes lors de la création d’une table.
en définissant des contraintes de tables lors de sa création.
en définissant des contraintes après la création de la table.
Definir des contraintes de colonnes à la création et après la création de table avec ALTER.
On peut toujours transformer des contraintes de colonnes en contraintes de table.
Vrai
Faux
VRAI
Explications
Cela est toujours possible, il suffit de déplacer la définition des contraintes de colonnes à la fin de la définition de la table.
On peut toujours transformer des contraintes de table en contraintes de colonnes.
Vrai
Faux
FAUX
Explications
Prendre l’exemple de la définition de la contrainte l’unicité des valeurs de deux colonnes d’une table ne peut se faire que via une contrainte de table.
Parmi les propositions de requêtes ci-dessous, laquelle est exécutable ?
1 .CREATE TABLE trajet (
identifiant PRIMARY KEY,
date_depart DATE NOT NULL,
empreinte_co2 REAL NOT NULL
) ;
- CREATE TABLE trajet (
identifiant INTEGER,
date_depart DATE NOT NULL,
empreinte_co2 REAL NOT NULL CHECK (empreinte_co2 > 0)
);
3 .CREATE TABLE trajet(
identifiant INTEGER,
date_depart DATE NOT NULL,
empreinte_co2 REAL > 0
);
2.
Quels sont les mots-clés associés aux requêtes de sélection de données ?
TABLE CREATE SELECT WHERE DROP ORDER ALTER FROM JOIN
SELECT WHERE ORDER FROM JOINT
Dans un formulaire HTML, quel attribut d’un champ permet d’identifier la valeur saisie lors du traitement par le serveur ?
id
class
name
name
Définition Base de données
En large une base de données fait référence à un vaste ensemble de données stockées numériquement qui peuvent être utilisées pour un ou plusieurs programmes. Il peut s’agir par exemple de disques durs, de tableaux ou de fichiers de traitement de texte. Une base de données structurée suit une structure systémique, en utilisant un modèle de données logique.
Structure pour fonction informatique essentiels aussi pour autorisation des utilisateur , controle qualité des donnees et concurrence des accès parallèles .
Fonction d’une base de donnée
Comment s’appelle le logiciel chargé de structuration, stockage, mise à jour et maintenance de bases de données, et est un interface unique entre informatique et utilisateurs.
Système de gestion de bases de donnée
Donne des exemples de SGBD
Oracle, PostgreSQL, Access, MongoDb, MySQL, et SQLLite sont des bases de données commerciales relationnelles avec des licences commerciales et open-source. Elles offrent une documentation de qualité, des alternatives puissantes aux solutions commerciales comme Oracle ou IBM, une interface graphique, MySQL pour les sites web dynamiques, et SQLLite pour les applications embarquées.
Définition interprétateur SGBD + donner un exemple
Interpréteur SQL est un programme qui traite les commands utilisateur et les laisses interagir avec un base de données, parfois appeler REPL. DB Fiddle est un interpréteur SQL en ligne accessible sur le Web.
Définition App Base de donnés
Définition Application de base de données
On appelle application de base de données un logiciel informatique permettant à un utilisateur final de
manipuler (lire ou écrire) les données d’une base de données.
Définition Objet
Définition Ligne (objet)
Chaque ligne de la table correspond à un objet que l’on veut gérer dans la base de données : une voiture, une
personne, une espèce, etc.
Définition cellule
Définition Cellule (donnée en relationnel)
Une donnée en relationnel, c’est le contenu d’une cellule d’une table, qui correspond à la propriété d’un objet.
Principe D’atomicité Explique
Attention !
Atomicité (contre-exemple)
Pour que la base de données fonctionne correctement on veille à ne mettre qu’une seule donnée par cellule, c’est
le principe d’atomicité en relationnel.
un langage informatique permettant de décrire et de manipuler les schémas et les données d’une BD.
Langage de données
Explique les détails des étapes de la conception de base de donnés
Quatre étapes sont distingués dans la conception d’une base de données:
l’analyse, la conceptuelle modélisation, la logique modélisation, et l’implémentation.
L’analyse étudie le problème et consigner dans un document, prenant hypothèses de simplification. La logique modélisation décrit une solution en utilisant une orientation informatique générale, formelle, mais indépendante d’une technique spécifique. L’implémentation correspond aux choix techniques en terme de SGBD choisis et à leur mise en œuvre.
est une reformulation du cahier des charges, qui précise, ajoute et supprime des éléments
(en justifiant). C’est cette référence qui sera utilisée pour la suite du projet. Si le périmètre d’un projet est modifié,
Note de clarification (NDC)
la NDC
dessin d’information à gérer en base de données, aide par représentations graphiques et formelles.
MCD
Comment s’appelle l’élément qui se caractérise par une représentation graphique simple, un pouvoir d’expression élevé, un exposé accessible, une formalisation claire, une spécification détaillée et une modélisation des données?
Le modèle conceptuel
Explique modèle logique de données et schéma en intention .
Un modèle logique de données décrit un ensemble structuré de données, en utilisant un langage formel pour décrire les types de données et les types de la base. Il est également connu sous le nom de schéma.
schéma en intention on distingue les colonne et leur types
C’ est un sous ensemble d’UML qui s’attache à la description statique d’un modèle de
données représentées par des classes d’objets.
Le diagramme de classes
Définition association
Relation entre classes decrit une co semantique unidirectionnelle, bidirectionnelle ou asynetrique (liens interdit )
permet de représenter le nombre minimum et maximum d’instances qui sont
autorisées à participer à la relation. La cardinalité est définie pour les deux sens de la relation.
Les cardinalités les plus courantes sont :
0..1 (optionnel)
1..1 ou 1 (un)
0..n ou 0.. ou * (plusieurs)
1..n ou 1..* (obligatoire)
Est optionnel un attribut qui peut ne pas avoir de valeur pour certaines instances.
Notation standard : attribute[0..1] : type
Notation non standard proposée : {optional}
Définition Optionnalité
Une fois qu’il a été créé, un attribut immuable ne peut pas voir sa valeur changée.
On le note en UML avec {frozen}.
Immuabilité
On utilise la notation des classes d’association lorsque l’on souhaite ajouter des propriétés à une association.
Classes d’association
est un ensemble de concepts permettant de formaliser la description des fichiers, quelle que soit la manière dont ils sont physiquement stockés dans une mémoire numérique. Il comprend des concepts pour la description et la manipulation des données. Le modèle représente les données à l’aide de quelques concepts simples : relations, tables, domaines de valeurs, clés et clés étrangères.
Modèle relationnel
Ensemble, caractérisé par un nom, dans lequel des données peuvent prendre leurs valeurs.
Domaine
Déf: relation, attribut, enregistrement
Relation
Une relation R sur les domaines D1, … , Dn est une table comportant une colonne pour chaque domaine et une
ligne pour chaque tuple de la relation.
Définition Attribut
On appelle attribut d’une relation, une colonne de cette relation. Un attribut est caractérisé par un nom et un domaine dans lequel il prend ses valeurs.
Synonymes : Champs, Propriété, Colonne
Définition Enregistrement
On appelle enregistrement d’une relation, une ligne de cette relation. Un enregistrement prend une valeur pour chaque attribut de la relation.
Synonymes : Tuple, N-uplet, Vecteur, Ligne
PLANT UML
On conseille pour la documentation l’usage du logiciel PlantUML.
Combiné avec un dépôt Git il permet d’historiser la dynamique de conception.
PlantUML s’intègre dans de nombreux éditeurs de texte, tel que Visual Studio ou Atom.
Définition Clé , clé candidates, clé étrangère
Clé: Un groupe d’attributs minimum qui permet d’identifier un tuple univoque. Chaque relation doit comporter au moins une clé, en cas de deux tuples identicals. Attributs de clés unique et non null: Tous les attributs d’une clé doivent être “valués”, d’où aucune ne peut avoir de valeur null.
Clés candidates: Les clés d’une relation ne sont choisis comme clé primaire. Il est possible d’une clé artificielle ou d’une clé signifiante. Un clé est signifiante si elle n’est pas artificielle.
Clé étrangère: Un clé étrangère est un attribut ou groupe d’attributs d’une relation R1 qui est apparaître comme clé primaire dans une relation R2, afin de matérialiser une référence entre les tuples de R1 et les tuples de R2.
Attention: Un clé primaire peut être référencée par une clé étrangère. Un clé étrangère respecte la contrainte d’intégrité référentielle si sa valeur est effectivement existante dans la clé primaire d’un tuple de la relation référencée ou si sa valeur est null.
Modelise la structure du systeme orienté objet et les relations entre objets
Les classes
On ne peut pas l’instancier = creer des bjets de cette classe.
Les Classes abstraites
Variable (les objets = chaine de caractere, booleens, tableaux)
Attributs
Donnes les Types de visibilité
- = privé aucun acces aux classes
+ = public acces autoriser
#= le croisillon protege methode et on acces aux mm classe
~ le tilde acces mm paquet
Get modifie les valeurs
Set permet l’acces a une valeur d’une class pour un autre objets
Num= identifiant
Etape pour choisir et definir une class
1.id objets et interactions
2. Choisir classe reutilisable
3. Id attribut et methodes
4. Revoir diagrammes pour coherences
Relations entre classes permet réutilisation du code
Héritage
Ajout instance d’une autre classe
Agrégation
1 ou + instance ajouter a une classe elle ne peux exister sans sa classe mère
Composition
Etape choix relation diagramme
- Id relation clé et interaction
- Type relations ass, compo, héritage
3.cardinalite
4.id et modeliser relation complexe(n-aires, ass,reflexives, sous classe et super class - Reviser affiner