DATABASE / THEORY.

0.0(0)
studied byStudied by 0 people
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/152

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

153 Terms

1
New cards

Que fait SELECT DISTINCT ?

Supprime les doublons

2
New cards

Que signifie BETWEEN en SQL ?

Utilisé pour faire des comparaisons entre des valeurs. (et pas >=)

3
New cards

Que représente un masque en SQL ?

Définit une famille de chaînes de caractères comme 'B_' ou '%SAPIN%'.

4
New cards

Que retourne la commande SELECT NOM, ADRESSE, COMPTE

WHERE COMPTE > 0 AND (CAT = 'C1' OR LOCALITÉ = 'Paris') ?

Affiche les clients créditeurs dans la catégorie 'C1' ou situés à 'Paris'.

5
New cards

Que fait la fonction TRIM ?

Utilisée pour effacer les espaces blancs.

6
New cards

Que fait la commande CAST en SQL ?

Effectue une conversion de type.

7
New cards

Comment soustraire la 2ème et 3ème lettre de la catégorie ?

Utiliser 'from 2' jusqu'à la 3ème lettre, sans mettre 'for 3' pour éviter d'inclure la 4ème lettre.

8
New cards

SELECT SUM(QSTOCK*PRIX)

FROM PRODUIT

WHERE LIBELLE LIKE '%SAPIN%'; ?

Calcule le total du montant en stock des produits ayant le libellé 'SAPIN'.

9
New cards

SELECT COUNT(DISTINCT NCLI)

FROM COMMANDE ?

Affiche le nombre de clients distincts dans la colonne COMMANDE.

10
New cards

Donnée dérivée ?

Donnée qu’on peut trouver en la calculant (ex:sous-total).

11
New cards

SQL ?

Standard Query Language, langage permettant de communiquer une BDD ou avec les données d’un site web.

12
New cards

Clé primaire ?

= Identifiant unique dans une table, permettant de distinguer les enregistrements.

13
New cards

Mode no-action ?

Mode de suppression qui refuse la suppression si des dépendances existent. Fais en sorte qu’on ne perde pas les données cruciales.

14
New cards

Mode cascade ?

supprime toutes les commandes associées à un client. (→ meilleur mode)

15
New cards

Mode set null ?

crée un client fictif à valeur nulle lors de la suppression d'un client.

16
New cards

Mode set default ?

similaire à set null, mais permet de définir les données du client. Il permet de définir une valeur par défaut pour une colonne lorsque les données ne sont pas spécifiées lors de l'insertion.

17
New cards

Redondances internes ?

Gaspillage d’espace dû à des données répétées dans une base de données.

18
New cards

Dépendance fonctionnelle anormale ?

C’est quand le déterminant n'est pas une clé primaireproblèmes de redondances. Pour la normaliser, décomposition de la table.

19
New cards

Comment créer une table et ses colonnes ?

create table CLIENT (NCLI char(10)

20
New cards

Numérique exact ?

Smallint, integer, decimal, numeric

21
New cards

Numérique approché ?

Real, float, double

22
New cards

Temps instant ?

time

23
New cards

Temps instant daté ?

timestamp

24
New cards

Temps intervalle ?

Interval

25
New cards

Comment créer un domaine ?

create domain MONTANT

Ou create domain MATRICULE,

26
New cards

Valeur par défaut d’une colonne ?

Create domain MONTANT default

27
New cards

Clés étrangères ?

Foreign key (NCLI) reference CLIENT);

28
New cards

Suppression d’une table ?

Drop table COMMANDE;

→ attention à ce que la table soit plus référencée par aucune clé, il ne doit plus avoir de traces.

29
New cards

Ajouter une colonne ?

Alter table PRODUIT add column POIDS small int;

30
New cards

supprimer une colonne ?

Alter table PRODUIT drop column PRIX;

31
New cards

Modifier valeur par défaut ?

Alter table CLIENT modify column CAT set ‘00’;

32
New cards

Supprimer valeur par défaut ?

Alter table CLIENT modify column CAT drop default;

33
New cards

Ajouter contrainte ?

Alter table PROSPECT add primary key (NCLI);

34
New cards

Enlever contrainte ?

Alter table CLIENT modify CAT not null;

35
New cards

Ajouter contraintes nommées ?

Alter table PROSPECT

add constraint PROPK primary key (NCLI);

36
New cards

Suppression d’une contrainte nommée ?

Alter table PROSPECT

Drop constraint PROPK;

37
New cards

Comment ajouter un index ?

create unique index XCLI_NCLI on CLIENT;

38
New cards

Comment créer un espace de stockage ?

create dbspace CLI_PRO_DAT;

39
New cards

Comment enlever un espace de stockage ?

drop dbspace CLI_PRO_DAT;

40
New cards

Est ce que c’est mieux de disperser les données dans différents espaces de stockage ?

Oui, ça permet de réduire la consommation de puissance du CPU.

41
New cards

Fichier log ?

Enregistre toutes les transactions de la base de donnée → permet de revenir en arrière si erreur.

42
New cards

Domaine de valeur ?

> c’est un domaine qu’on crée.

-> permet de gagner du temps si l’on doit changer une valeur dans pleins de données, on aura juste à le changer 1fois et pas 100fois.

43
New cards

Il vaut mieux nommer mes contraintes, mais comment ?

-> constraint COMPK primary key (NOM);

-> plus simple si jamais on doit supprimer qqch.

44
New cards

La jointure ?

→ permet de produire une table constituée de données extraites de plusieurs tables :
where COMMANDE.NCLI = CLIENT.NCLI;

<p><span>→ permet de <strong>produire </strong>une table constituée de données extraites de plusieurs tables : </span><br><span>where COMMANDE.NCLI = CLIENT.NCLI;</span></p>
45
New cards

La sous-requête permet de formuler ?

·   une condition d'association (in)
·   une condition de non-association (not in)

46
New cards

La jointure permet de formuler ?

une condition d'association

47
New cards

union ?

→ ∪ → combine les résultats de deux ou + éléments SÉLECT et enlève n’importe quelles lignes duppliquées

48
New cards

intersection ?

49
New cards

différence ?

- → retourne les lignes qui sont dans le premier SÉLECT mais pas dans le deuxième

50
New cards

Comment lire (écrire) une requête ?

6 :  select NCLI, count(*), sum(QCOM)
1 :  from   COMMANDE M, DETAIL D
2 :  where  M.NCOM = D.NCOM
3 :  and    NPRO = 'PA60'
4 :  group by NCLI
5 :  having count(*) >= 2
7 :  order by NCLI

51
New cards

Insérer une ligne ?

→ insert into … ();

52
New cards

Insérer plusieurs lignes ?

Insert into CLIENT_TOULOUSE

53
New cards

Suppression de lignes ?

delete from …

54
New cards

Modifier des lignes ?

update …

55
New cards

Une jointure peux dans tous les cas être remplacée par une sous-requête ?

Oui, car les sous requêtes permettent de formuler un ‘in’ (condition d’association) ainsi qu’un ‘not in’ (condition de non association)

Les jointures permettent quant à elles de formuler une condition d’association, on peut donc affirmer qu’une jointure puisse dans tous les cas être remplacée par une sous-requête mais pas le contraire.

56
New cards

Commandes qui ne spécifient pas le produit PA60 ?

SELECT NCOM, DATECOM, NCLI

FROM COMMANDE,

WHERE NCOM in (SELECT NCOM FROM Detail WHERE NPRO <> “PA60”);

57
New cards

Une clé étrangère référence … ?

→ l’identifiant primaire de la table cible

58
New cards

Pour modifier contrainte obligatoire ?

  • insérer une ligne → valeur doit être nulle

  • Supprimer une ligne → OK

  • Modifier → nouvelle valeur doit être nulle

59
New cards

Pour modifier contrainte d’unicité - identifiant ?

  • insérer → valeur doit pas être en double

  • Supprimer → OK

  • Modifier → nouvelle valeur doit pas être en double

60
New cards

Pour modifier contrainte d’intégrité référentielle - clé étrangère ?

  • insérer → valeur doit être présente dans l’ID auquel NCLI fait référence

  • Supprimer → OK

  • Modifier → nouvelle valeur doit être présente dans l’ID qui est lié.

61
New cards

On mets toujours un index sur ?

→ clé primaire et clé étrangère

62
New cards

Quand est ce qu’on supprime une contrainte?

Lors de migration

63
New cards

Avant de supprimer une table, il faut vérifier qu’elle ne soit plus ?

référentiée

64
New cards

Étapes SQL ?

  1. Créer base de donnée → create schema … ;

  2. Créer espace stockage → create dbspace … ;

  3. Créer les tables → create table … ;

  4. Créer les indexes → create index … ;

65
New cards

DML ?

Insert

Delete

Update

Select

66
New cards

CAT in ?

→ Choix, soit … soit … (pas la même chose que <>)

67
New cards

LOCALITE not in ?

→ choix, ni … ni …

68
New cards

COMPTE between ?

→ intervalle ouvert (→ COMPTE between 1000 and 4000;)(→ compris)

69
New cards

CAT like ?

→ commence par B suivie de n’importe quelle chaîne de ch. (→ Where CAT like ‘B_’;)

70
New cards

B_ ?

→ 1 seul ch. après B

71
New cards

B__ ?

→ 2 ch. après B

72
New cards

’%SAPIN%’

Chaîne quelquonque

73
New cards

Comment créer des alias SELECT ?

= renommer virtuellement des colonnes → select NPRO as Produit … ;

74
New cards

TRIM ?

3 arg : both, left, right → regarde si il y a un espace blanc avant ou après

75
New cards

// ?

Concaténation → s’applique qu’à des chaînes de caractères.

76
New cards

Upper ?

Affiche toutes les localités en maj.

77
New cards

Lower ?

Affiche toutes les localités en minuscule.

78
New cards

Position ?

Regarde si le mot recherché est dans le nom, et à quelle position. Si oui, nombre indiquant la position, si non, 0.

79
New cards

Comment convertir le format date en format char ?

Select nom // ‘’ // cast (date de naissance as char (12))

80
New cards

Extraire l’année d’une date ?

Extract (year from Datecom) +1

Extract (hour from current_time) > 18

81
New cards

Afficher prix total stock de produits mais que ceux libellés ‘sapin’ ?

→ select sum (QTOCK*PRIX)

From PRODUIT

Where LIBELLÉ like ‘%SAPIN%’;

82
New cards

En SQL, on peut pas exprimer directement … ?

→ le quantificateur pour tout, pour tout n’existe pas. → donc on utilise exists.

83
New cards

Peut on remplacer une sous requête par une jointure ?

Si la sous requête exprime une condition d’association, OUI. MAIS, si la sous requête exprime une condition de non-association, NON.

84
New cards

Si on veut que les doublons s’affichent ?

On ajoute all.

85
New cards

Jointure externe ?

Jointure qui cherche les externalités de la jointure

86
New cards

Structure directe ?

1 table, 1 clé primaire, des colonnes et 1 de ces colonnes est une clé étrangère qui pointe sur la même table

87
New cards

<> ?

Différent de, vérifie que 2 valeurs sont bien inégales

88
New cards

Dans quel cas est ce que c’est obligé d’utiliser le having ?

avec les fonctions d’agrégations, et lorsqu’on a déjà un group by, et qu’on veut le restreindre.

89
New cards

Dans quel cas est ce obligé d’utiliser un group by ?

Lorsque dans un select il y a plusieurs fonctions d’agrégations et une colonne sans agrégation.

90
New cards

Différence entre une union et une jointure externe totale entre 2 tables ?

Une jointure liera les colonnes tandis que l’union liera des lignes.

91
New cards

Jointure externe totale ?

Lorsque la condition est vraie sur min. 1 table, retournera les résultats.

92
New cards

Where ?

c’est mettre une condition sur l’affichage, “afficher qqch dont … , qqch qui est …

93
New cards

Having ?

Agit comme un filtre aussi, (comme le where) mais la différence, c’est qu’on peut utiliser les fonctions agrégatives avec cette méthode, souvent utilisé avec un Group By.

94
New cards

Différence entre full outer join et union ?

Une union va permettre de fusionner 2 tables sans critère en supprimant les doublons et en conservant la structure d’origine des tables. Alors qu’une Full Outer Join, va mettre en relation 2 tables selon un critère d’égalité à respecter pour obtenir les infos.

95
New cards

Jointure externe ?

Fait le lien entre 2 tables afin d’en retirer toutes leurs infos. Elle est “externe” dès que l’on cherche à obtenir les infos qui sont communes aux 2 tables mais qu’on souhaite aussi obtenir ses infos externes, les données d’une des 2 tables.

96
New cards

Index unique ?

Permet de spécifier qu’1 ou plusieurs colonnes doivent contenir des valeurs uniques à chaque enregistrement. (→ pour rendre un index unique, ajouter UNIQUE dans la ligne.)

97
New cards

Principe indépendance physique ?

tous les aspects matériels de la base de données n’apparaissent pas pour l’user, c’est juste une structure transparente de représentation des infos.

98
New cards

Principe d’indépendance logique ?

L’admin de la base doit pouvoir faire évoluer sans que cela gène les users.

99
New cards

Objectif clé étrangère ?

D’assurer l’intégrité référentielle des données.

100
New cards

Contrainte d’intégrité obligatoire ?

Colonnes qui doivent absolument contenir une info, cette contrainte est obtenue en la spécifiant comme : not null.