2016-03-02 1 views
0

Oracle spécifie "you must specify aliases if the view definition includes constraints." Mais dans la requête suivante, la colonne email a une contrainte unique, mais pas d'alias.Mais cela fonctionne bien.Pourquoi?Avons-nous besoin de spécifier un alias dans la vue si sa définition a une colonne avec une contrainte unique?

CREATE VIEW emp_sal (emp_id, last_name, 
     email UNIQUE RELY DISABLE NOVALIDATE, 
    CONSTRAINT id_pk PRIMARY KEY (emp_id) RELY DISABLE NOVALIDATE) 
    AS SELECT employee_id, last_name, email FROM employees; 
+0

Vous ** utilisez ** des alias. Dans la partie 'emp_sal (emp_id, last_name, ...)', 'emp_id' et' last_name' sont les alias –

Répondre

0

Fait intéressant, il y a des alias dans votre définition de vue:

CREATE VIEW emp_sal (emp_id, last_name, 
     email UNIQUE RELY DISABLE NOVALIDATE, 
    CONSTRAINT id_pk PRIMARY KEY (emp_id) RELY DISABLE NOVALIDATE) 
    AS SELECT employee_id, last_name, email FROM employees; 

Ici emp_id, last_name, email ne sont que des alias.