APP2 Flashcards

(20 cards)

1
Q

Qu’est-ce que la normalisation d’une base de données?

A

La normalisation est le processus de décomposition de quelques “mauvaise” relations en divisant leurs attributs dans des relations plus petites

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Qu’elle est la première force normale (1FN)?

A

C’est une relation dont tous ses attributs sont atomiques:

  • pas d’attributs composée
  • pas d’attributs multivaleur
  • pas de relation imbriqué
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Qu’elle est la deuxième forme normale (2FN)?

A

Une relation respecte la 2e forme normal si:

  • Elle respecte la 1FN
  • Tout attribut n’appartenant pas à la clé primaire est en dépendance fonctionnelle totale avec la clé primaire
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Qu’elle est la troisième forme normale(3FN)?

A

Une relation respecte la 3e forme normale si:

  • Elle respecte la 2FN
  • Elle ne contient pas de dépendance fonctionnelle transitive entre attribut non clé
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Qu’est-ce que une entité?

A

Une entité représente un objet du monde réel.

ex: chaise, personne, classe

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Qu’est-ce qu’un attribut?

A

C’est une charactéristique d’un objet du monde réel

ex: couleur, nb de patte, etc

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Qu’est-ce que une relation?

A

C’est le lien entre des entités

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qu’est ce que la dépendance fonctionelle?

A

C’est de pouvoir déterminer un attribut à partir d’un autre attribut

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Qu’elle est l’utilité de la normalisation?

A

Le but est d’éviter des anomalies transactionnelles pouvant découler d’une mauvaise modélisation des données et ainsi éviter un certain nombre de problème potentiel tels que les anomlies de lecture, d’écriture et la rededondance de données.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Qu’est-ce que l’algébre linéaire?

A

Ces un ensemble d’opération formelles sur les relations. Les opérations relationelle permetent de créer de nouvelle relations(tables) à parir d’opération élémentaire sur d’autres tables(Union, Différence, Intersection)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Quelle sont les Opération relationnelle ?

A
  • Union (R U S)
  • Intersection( R ∩ S)
  • Différence (R - S)
  • Produit cartésien (R X S)
  • Jointure (R * S)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Qu’est-ce qu’un trigger?

A

Un trigger (déclancheur) spécifie que la base de données doit exécuter automatiquement une fonction donnée chaque fois qu’un certain type d’opération est exécuté

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Sur quel type d’opérations les triggers peuvent s’attacher et à quel moment?

A

Ils peuvent s’éxécuter avant ou après une commande INSERT, UPDATE, ou DELETE, soit une fois par ligne modifiée, soit une fois par expression SQL

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Quelle est l’utilité de NEW?

A

Type de données RECORD; variable contenant la nouvelle ligne de base de données pour les opérations INSERT/UPDATE dans les triggers de niveau ligne. Cette variable est NULL dans un trigger de niveau instruction.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Quelle est l’utilité de OLD?

A

Type de données RECORD; variable contenant l’ancienne ligne de base de données pour les opérations UPDATE/DELETE dans les triggers de niveau ligne . Cette variable est NULL dans les triggers de niveau instructions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Est-ce que un entrepot à besoin d’être normalisée?

A

Non, puisque les données qui proviennent des tables sont déja normalisées

17
Q

À quoi sert une restriction (σ) dans l’algèbre relationnelle?

A

Une restriction consiste à réduire le nombre de tuples en fonction d’un critère

18
Q

Écrire un trigger

A

CREATE OR REPLACE FUNCTION delete_pavillon_fun() RETURNS trigger AS
$$
BEGIN
DELETE FROM local WHERE pavillon_id = OLD.pavillon_id;
RETURN OLD;
END
$$
LANGUAGE plpgsql;
CREATE TRIGGER delete_pavillon_trig
BEFORE DELETE ON pavillon
FOR EACH ROW EXECUTE PROCEDURE delete_pavillon_fun();
Test :
insert into pavillon values (‘C1’, ‘JAB’);
insert into pavillon values (‘D7’, ‘MV’);
insert into local(local_id, pavillon_id) VALUES (‘C1-3035’, ‘C1’);
insert into local(local_id, pavillon_id) VALUES (‘D7-3036’, ‘D7’);
SELECT * FROM local;
DELETE FROM pavillon WHERE pavillon_id = ‘D7’;
SELECT * FROM local;

19
Q

Est-il possible d’insérer à partir d’une vue?

20
Q

De quelle façon est-il possible d’insérer des données à parir d’une vue?

A

Il est possible à l’aide d’un trigger Instead Of