Lundi 15 août 2011 1 15 /08 /Août /2011 11:41

 

SQL ALTER VIEW.

Comment compiler une Vue dans Oracle ?
Comment ajouter une contrainte dans une Vue ?
Comment supprimer une contrainte dans une Vue ?

  • La commande ALTER VIEW est utilisée pour compiler une vue invalide.
  • ‡
  • La commande ALTER VIEW est utilisée pour ajouter des contraintes déclaratives sur une Vue.
  • ‡
  • La commande ALTER VIEW est utilisée pour supprimer des contraintes déclaratives sur une Vue.

Une Vue est une table logique pointant sur une ou plusieurs Tables ou Vues et ne contient physiquement pas de données.

 

Modifier une Vue dans Oracle avec ALTER VIEW.

 

Syntaxe ALTER VIEW.

 
ALTER VIEW [ schema. ]view
  { ADD CONSTRAINT constraint DISABLE NOVALIDATE;
  | DROP CONSTRAINT constraint
  | COMPILE 
  } ;

 

ALTER VIEW COMPILE.

Parfois il est nécessaire de compiler une Vue si la structure de la table de base à été modifiée.

 
SQL> CREATE VIEW v_alter_view
       AS SELECT ename, job, sal
            FROM emp
           WHERE deptno = 20;

Vue créée.

SQL> COL object_name FORMAT A20;
SQL> SELECT object_name, object_type, status
       FROM user_objects
      WHERE object_name = UPPER('v_alter_view');

OBJECT_NAME          OBJECT_TYPE         STATUS
-------------------- ------------------- -------
V_ALTER_VIEW         VIEW                VALID

SQL>

 

Nous allons modifier la structure de la table de base, et notre Vue sera alors invalide.

 
SQL> ALTER TABLE scott.emp
          MODIFY(job VARCHAR2(15 BYTE));

Table modifiée.

SQL> COL object_name FORMAT A20;
SQL> SELECT object_name, object_type, status
       FROM user_objects
      WHERE object_name = UPPER('v_alter_view');

OBJECT_NAME          OBJECT_TYPE         STATUS
-------------------- ------------------- -------
V_ALTER_VIEW         VIEW                INVALID

SQL>

 

Nous allons alors compiler la Vue avec ALTER VIEW COMPILE afin de la rendre VALIDE.

 
SQL> ALTER VIEW v_alter_view COMPILE;

Vue modifiée.

SQL> COL object_name FORMAT A20;
SQL> SELECT object_name, object_type, status
       FROM user_objects
      WHERE object_name = UPPER('v_alter_view');

OBJECT_NAME          OBJECT_TYPE         STATUS
-------------------- ------------------- -------
V_ALTER_VIEW         VIEW                VALID

SQL>

 

ALTER VIEW ADD CONSTRAINT.

Ce sont des contraintes déclaratives seulement. Non actives.

 
SQL> ALTER VIEW v_alter_view
     ADD CONSTRAINT pk_alter_view
     PRIMARY KEY (ename) DISABLE NOVALIDATE;

Vue modifiée.

 

ALTER VIEW DROP CONSTRAINT.

 
SQL> ALTER VIEW v_alter_view DROP CONSTRAINT pk_alter_view;

Vue modifiée.

SQL>

 

 

DROP VIEW CASCADE CONSTRAINT.

 
SQL> DROP VIEW v_alter_view CASCADE CONSTRAINT;

Vue supprimée.
SQL>

 

Haut de Page www.dba-ora.fr

 

Liens en rapport avec l'article et qui sont susceptibles de vous intéresser
• CREATE VIEW
• SQL INSERT INTO TABLE ORACLE
• CREATE TABLE ORACLE
• Update Table avec MERGE INTO
• SQL INSERT INTO plusieurs TABLE ORACLE
Par Daniel Roesch - Publié dans : SQL VIEW
Ecrire un commentaire - Voir les 0 commentaires
Retour à l'accueil

Rechercher Articles Oracle SQL sur ce Site.

Loading

À lire aussi…

Download PDF Oracle

Rechercher sur le site

Oracle 10G - DBA -

Syndication

  • Flux RSS des articles
Contact - C.G.U. - Rémunération en droits d'auteur - Signaler un abus - Articles les plus commentés