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

Oracle Discussion :

creation vues dynamiques oracle


Sujet :

Oracle

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 69
    Par défaut creation vues dynamiques oracle
    bonjour à tous,
    ayant eu de l'aide concluante la dernière fois je renouvelle l'expérience pour cette fois ci un problème de créations de vue dynamiques.

    j'ai en premier créer des utilisateurs avec des privilèges : dans mon cas uniquement des select (ds 1 premier temps).

    je veux qu' un animateur puisse voir les animations proposées pour cela j'ai fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    grant select on ANIMATIONS to estelle;
    ensuite j'ai fait la requête suivante mais je ne sais pas avec quel compte la créer ?? system, estelle?? ou le nom de la base dans laquelle se trouve la table??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    create view v_animateur_animations as
    select * from animations
    where NumAnimateur =
    (select NumAnimateur
    from ANIMATEUR
    where NOMANIMATEUR = ESTELLE
    (select ESTELLE from user_users)
    );
    et j'obtiens l'erreur expression absente
    les idées seront les bienvenues

  2. #2
    Membre Expert
    Inscrit en
    Août 2009
    Messages
    1 073
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1 073
    Par défaut
    L'erreur vient de ce que la syntaxe est problématique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    CREATE VIEW v_animateur_animations AS
    SELECT * FROM animations
    WHERE NumAnimateur =
    (SELECT NumAnimateur
    FROM ANIMATEUR
    WHERE NOMANIMATEUR = ESTELLE  -- 'ESTELLE' ?
    (SELECT ESTELLE FROM user_users) -- Que vient faire ce select ici ?
    );
    Et sinon, s'il y a un nom en dur, autant que ça soit sur une vue uniquement associée à l'utilisateur.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 69
    Par défaut
    effectivement Rei Ichido le problème venait bien de la syntaxe et comme tu le dis le nom en dur fonctionne mieux

  4. #4
    Membre très actif Avatar de star
    Homme Profil pro
    .
    Inscrit en
    Février 2004
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Corée Du Nord

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Février 2004
    Messages : 940
    Par défaut
    le nom en dur c'est pas bon
    vaut mieux utiliser la fonction USER qui retour le nom de l'utilisateur justement
    .

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 69
    Par défaut
    la bonne syntaxe qui fonctionne nikel est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    CREATE VIEW v_animateur_animations AS
    SELECT * FROM animations
    WHERE NumAnimateur =
    (SELECT NumAnimateur
    FROM ANIMATEUR
    WHERE NOMANIMATEUR = 
    (SELECT username FROM user_users));

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. creation vue sur une periode
    Par LHERMITTE dans le forum Oracle
    Réponses: 2
    Dernier message: 30/03/2006, 11h46
  2. Insertion nouvelle vue dans oracle discoverer
    Par Jean-Matt dans le forum Oracle
    Réponses: 4
    Dernier message: 18/11/2004, 17h24
  3. Lancer des shell unix pour creation d'objet ORACLE
    Par sygale dans le forum Administration
    Réponses: 6
    Dernier message: 27/10/2004, 18h03
  4. Creation d'une vue dynamique ?
    Par Simeans2004 dans le forum Administration
    Réponses: 5
    Dernier message: 01/07/2004, 15h25
  5. [Plugin] Création d'une vue dynamiquement
    Par The Bonze dans le forum Eclipse Platform
    Réponses: 2
    Dernier message: 15/06/2004, 13h23

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