IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Vues et Séquences


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 40
    Par défaut Vues et Séquences
    Bonjour a tous, on me demande de créer une vue qui contient tous les employés dans le département 20, en empêchant toute modif de celle-ci.

    Alors bon je me suis exécuté et voila ce que j'ai fait :

    CREATE VIEW Emp_vu_20 AS
    SELECT last_name, department_id
    FROM employees
    WHERE department_id = 20;


    Sachant que ma table ressemble a ca :



    Quant au fait d'empêcher toute modification est-ce qu'un commit peut suffire?

    Dans un second temps on me demande de créer une séquence me permettant de générer les numéros des ID des employés pour la table Emp.

    Alors tout d'abord je crée ma séquence du genre :

    CREATE SEQUENCE gener_id
    START WITH 100
    INCREMENT BY 10
    MAXVALUE 1000;


    Puis

    INSERT INTO Emp(ID)
    VALUES (gener_id, nextval);


    Ma machine virtuelle Oracle est en rade...Je n'ai donc pas pu tester et comme je suis novice en SQL je préfère avoir votre avis.

    Merci d'avance.

  2. #2
    Membre averti
    Inscrit en
    Août 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 20
    Par défaut
    Salut,

    Pour l'insertion des ID dans ta table je pense plutôt qu'il faut utiliser la variable
    gener_id.nextval

    Sinon pour la création de ta vue il est intéressant de nommer les colonnes de ta vue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    CREATE VIEW Emp_vu_20( nom_col1, nom_col2)
    AS
    SELECT last_name, department_id
    FROM employees
    WHERE department_id = 20;

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 354
    Par défaut
    En ce qui concerne une vue qui ne permet pas des modifs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE VIEW Emp_vu_20 AS
    SELECT last_name, department_id
    FROM employees
    WHERE department_id = 20
    WITH READ ONLY;

Discussions similaires

  1. Vues matérialisées - refresh séquencé
    Par vinch999 dans le forum SQL
    Réponses: 4
    Dernier message: 24/09/2012, 11h25
  2. Droits séquences et vues: spécialiste svp
    Par icer dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 22/08/2007, 11h03
  3. Réponses: 2
    Dernier message: 09/11/2006, 17h42
  4. [Crystal Report] Utilisation des vues de sql serveur
    Par Olivierakadev dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 15/11/2002, 17h44
  5. compression de données du point de vue algorithmique
    Par GoldenEye dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 26/06/2002, 15h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo