Conception Et Réalisation (Oracle) by Grare Stéphane - HTML preview

PLEASE NOTE: This is an HTML preview only and some elements such as links or page numbers may be incorrect.
Download the book in PDF, ePub, Kindle for a complete version.

Supprimer une table

La suppression d’une table entraîne la suppression de toutes les données présentes dans la

table. Les déclencheurs et les index associés à la table sont également supprimés. Il en est de

même pour les permissions d’utilisation de la table.

61

DROP TABLE [ schema. ] nom_table ;

DROP TABLE [ schema. ] nom_table CASCADE CONSTRAINTS;

Vous devez :

• Posséder un privilège DROP ANY TABLE

• Ou être le créateur de la table

La suppression d’une table supprimera les données et les index associés. La suppression ne

sera pas possible si la table est référencée par une clé étrangère.

--Suppression de la table CHEFS

DROP TABLE CHEFS

Supprimer une base de données

Depuis la version 10G d'Oracle, il est maintenant possible de supprimer une base de données

avec une commande DROP DATABASE. Seront supprimés :

• Les DATAFILES

• Les REDO LOG FILES

• Les CONTROLFILES

• Le SPFILE

Les fichiers init.ora (PFILE) et Password File (PWDsid.ora) ne sont pas supprimés. Pour

effectuer une suppression, vous devez vous connecter avec SYSDBA. Nous effectuons les

manipulations suivantes avec SQL*Plus.

SQL> CONNECT / AS SYSDBA

Fermer la base de données.

SQL> SHUTDOWN ABORT

Monter la base de données en mode EXCLUSIVE RESTRICT.

SQL> STARTUP MOUNT EXCLUSIVE RESTRICT

Suppression de la base de données.

SQL> DROP DATABASE

Suppression de l'instance (service Oracle).

C:\ORADIM -DELETE -SID OracleServiceSID

62

index-63_1.png

Création d’une séquence (compteur)

Un compteur (séquence) est un objet Oracle permettant de générer automatiquement une

série de valeurs uniques. Cet outil est utile pour exploiter un attribut clé tel qu’un numéro

d’ordre sans risque de saisir des doublons par erreur.

La commande suivante permet de définir un compteur nommé « monCompteur » qui va

s’incrémenter de 1 par défaut et pouvant atteindre 1000 pour ensuite repartir à zéro (cycle).

CREATE SEQUENCE monCompteur

START WITH 1

MAXVALUE 1000

CYCLE;

On aurait pu ajouter l’option INCREMENT BY et spécifier le pas d’incrémentation :

CREATE SEQUENCE monCompteur

INCREMENT BY 5

START WITH 1

MAXVALUE 1000

CYCLE;

Pour accéder à votre compteur, il suffit d’utiliser la commande SELECT sur la table DUAL

gérée par Oracle.

SELECT monCompteur.nextval

FROM dual ;

Créons la table suivante :

CREATE TABLE CLIENT

(

NUMERO INTEGER not null,

NOM VARCHAR2(25) not null,

PRENOM VARCHAR2(25) not null,

constraint PK_CLIENT primary key (NUMERO)

);

Affection de la valeur du compteur lors de l’ajout d’un enregistrement dans une table :

INSERT INTO CLIENT VALUES

63

index-64_1.png

(monCompteur.nextval, 'Tartanpion', 'Toto')

Résultat :

SELECT * FROM CLIENT

Intégrité des données

On distingue 4 types d’intégrité :

· L’intégrité de domaine (ou de colonne) consiste à préciser l’ensemble des valeurs valides

dans une colonne et à indiquer si les valeurs nulles sont autorisées.

· L’intégrité d’entité (ou de table) consiste à s’assurer que toutes les lignes d’une table

possèdent un identificateur unique.

· L’intégrité référentielle garantit le maintien d’une relation existant entre une clé primaire

dans une table référencée et une clé étrangère dans chacune des tables qui la référencent.

· L’intégrité définie par l’utilisateur permet de définir de règles d’entreprise spécifiques

qui n’entrent dans aucune des autres catégories d’intégrité.