Vous êtes sur la page 1sur 3

fichier de mappage Le nom du fichier doit ressembler à ceci : nomfichier.hbm.

xml

le nom du fichier de configuration : hibernate.cfg.xml

7. Que sont les contraintes en SQL ?


Les contraintes sont utilisées pour spécifier les règles concernant les données
dans la table.
Elles peuvent être appliquées à un ou plusieurs champs d'une table SQL pendant la
création de
la table ou après sa création à l'aide de la commande ALTER TABLE. Les contraintes
sont

NOT NULL - Empêche l'insertion d'une valeur NULL dans une colonne.
CHECK - Vérifie que toutes les valeurs d'un champ satisfont à une condition.
DEFAULT - Attribue automatiquement une valeur par défaut si aucune valeur n'a été
spécifiée pour le champ.
UNIQUE - Assure l'insertion de valeurs uniques dans le champ.
INDEX - L'indexation d'un champ permet de retrouver plus rapidement les
enregistrements.
PRIMARY KEY - Identifie de manière unique chaque enregistrement dans une table.
FOREIGN KEY - Assure l'intégrité référentielle pour un enregistrement dans une
autre table.
**
8. Qu'est-ce qu'une clé primaire (Primary key)?
La contrainte PRIMARY KEY identifie de manière unique chaque ligne d'une table.
Elle doit contenir des valeurs UNIQUES et comporte une contrainte implicite NOT
NULL.

Une table en SQL est strictement limitée à une et une seule clé primaire, qui est
composée d'un ou plusieurs champs (colonnes).
CREATE TABLE Students ( /* Create table with a single field as primary key */

ID INT NOT NULL

Name VARCHAR(255)

PRIMARY KEY (ID)

);
***
9. Qu'est-ce qu'une contrainte UNIQUE ?
Une contrainte UNIQUE garantit que toutes les valeurs d'une colonne sont
différentes. Elle assure l'unicité de la ou des colonnes et permet d'identifier
chaque ligne de manière unique. Contrairement à la clé primaire, il peut y avoir
plusieurs contraintes uniques définies par table. La syntaxe du code pour UNIQUE
est assez similaire à celle de PRIMARY KEY et peut être utilisée de manière
interchangeable.

CREATE TABLE Students ( /* Create table with a single field as unique */

ID INT NOT NULL UNIQUE

Name VARCHAR(255)

);

**
10. Qu'est-ce qu'une clé étrangère (foreign key)?
Une FOREIGN KEY comprend un seul champ ou un ensemble de champs dans une table
qui se réfère essentiellement à la PRIMARY KEY d'une autre table. La contrainte
de clé étrangère garantit l'intégrité référentielle dans la relation entre deux
tables.

La table avec la contrainte de clé étrangère est appelée la table enfant, et la


table contenant la clé candidate est appelée la table référencée ou parent.
CREATE TABLE Students ( /* Create table with foreign key - Way 2 */

ID INT NOT NULL PRIMARY KEY

Name VARCHAR(255)

LibraryID INT FOREIGN KEY (Library_ID) REFERENCES Library(LibraryID)

);
***
14. Qu'est-ce qu'un indice/index ? Expliquez ses différents types.
Un index de base de données est une structure de données qui permet de consulter
rapidement les données d'une ou de plusieurs colonnes d'une table. Il améliore la
vitesse des opérations d'accès aux données d'une table de base de données au prix
d'écritures et de mémoire supplémentaires pour maintenir la structure de données de
l'index.

CREATE INDEX index_name /* Create Index */

ON table_name (column_1, column_2);

DROP INDEX index_name; /* Drop Index */

**
22. Qu'est-ce qu'un curseur ? Comment utiliser un curseur ?
Un curseur de base de données est une structure de contrôle qui permet de parcourir
les enregistrements d'une base de données. Les curseurs facilitent en outre le
traitement après la traversée, comme la récupération, l'ajout et la suppression
d'enregistrements de la base de données. Ils peuvent être considérés comme un
pointeur vers une ligne dans un ensemble de lignes.

Travailler avec le curseur SQL


DECLARE un curseur après toute déclaration de variable. La déclaration du curseur
doit toujours être associée à une instruction SELECT.
Ouvrir le curseur pour initialiser le jeu de résultats. L'instruction OPEN doit
être appelée avant d'extraire des lignes du jeu de résultats.
L'instruction FETCH pour récupérer et passer à la ligne suivante dans le jeu de
résultats.
Appelez l'instruction CLOSE pour désactiver le curseur.
Enfin, utilisez l'instruction DEALLOCATE pour supprimer la définition du curseur et
libérer les ressources associées.
DECLARE @name VARCHAR(50) /* Declare All Required Variables */

DECLARE db_cursor CURSOR FOR /* Declare Cursor Name*/

SELECT name

FROM myDB.students
WHERE parent_name IN ('Sara', 'Ansh')

OPEN db_cursor /* Open cursor and Fetch data into @name */

FETCH next

FROM db_cursor

INTO @name

CLOSE db_cursor /* Close the cursor and deallocate the resources */

DEALLOCATE db_cursor

Vous aimerez peut-être aussi