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 :

"Table or view does not exist" dans un create view


Sujet :

SQL Oracle

  1. #1
    Membre confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 137
    Points : 621
    Points
    621
    Par défaut "Table or view does not exist" dans un create view
    Bonjour,

    Tout d'abord une petite description de mon environnement :
    - Oracle 11g
    - mes tables sont réparties entre 2 schémas : SITE et CDEV

    J'ai besoin de créer une vue à partir d'une sous-requete pas très compliquée mais il me répond qu'une des tables utilisées n'existe pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    CREATE OR REPLACE VIEW CDEV."TMPC1EB46B973195E09197491AB8C" AS (
        SELECT a."ID",a."UTILISATEUR",a."NOM",a."EMAIL"
        FROM CDEV."U@COMPLEMENTUTILISATEU" a 
        WHERE a."ID" IN (
            SELECT b."IDCOMPLEMENT" AS COL1 
            FROM SITE."U@USER" b 
            WHERE (b."CONNECTIONAUTORISEE" <> 'N')
        )
    );
    résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            FROM SITE."U@USER" b
                      *
    ERROR at line 6:
    ORA-00942: table or view does not exist
    Pourtant si j'exécute la requête SQL seule ça fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT a."ID",a."UTILISATEUR",a."NOM",a."EMAIL"
        FROM CDEV."U@COMPLEMENTUTILISATEU" a 
        WHERE a."ID" IN (
            SELECT b."IDCOMPLEMENT" AS COL1 
            FROM SITE."U@USER" b 
            WHERE (b."CONNECTIONAUTORISEE" <> 'N')
        )
    résultat (aucune ligne sélectionnée car CDEV."U@COMPLEMENTUTILISATEU" est vide) :
    Pourquoi est-ce qu'oracle ne voit pas la table SITE."U@USER" quand je crée une vue ?!

    Merci ! :-)

  2. #2
    Membre confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 137
    Points : 621
    Points
    621
    Par défaut
    Petit complément :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE OR REPLACE VIEW CDEV.TEST_U_USER AS (
        SELECT b."IDCOMPLEMENT" AS COL1
        FROM SITE."U@USER" b
        WHERE (b."CONNECTIONAUTORISEE" <> 'N')
    )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            FROM SITE."U@USER" b
                      *
    ERROR at line 3:
    ORA-00942: table or view does not exist
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE OR REPLACE VIEW TEST_U_USER AS (
        SELECT b."IDCOMPLEMENT" AS COL1
        FROM SITE."U@USER" b
        WHERE (b."CONNECTIONAUTORISEE" <> 'N')
    )
    En fait je ne peux pas créer la vue sur le schéma que je souhaite .....

  3. #3
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Quand vous exécutez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    CREATE OR REPLACE CDEV.VIEW TEST_U_USER AS (
        SELECT b."IDCOMPLEMENT" AS COL1
        FROM SITE."U@USER" b
        WHERE (b."CONNECTIONAUTORISEE" <> 'N')
    )
    vous est connecté sur quel user ?

  4. #4
    Membre confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 137
    Points : 621
    Points
    621
    Par défaut
    Bonjour,

    Je suis connecté sous un troisième user (en fait SITE et CDEV sont des users dont le compte est désactivé, juste pour avoir des schémas). Ce troisieme utilisateur a tous les droits et c'est meme lui qui a créé les schémas SITE et CDEV ainsi que leurs tables respectives

    Merci

  5. #5
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    CREATE OR REPLACE CDEV.VIEW TEST_U_USER
    Erreur de copier coller, je suppose que vous avez écrit CREATE OR REPLACE VIEW CDEV.TEST_U_USER ?

  6. #6
    Membre confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 137
    Points : 621
    Points
    621
    Par défaut
    Citation Envoyé par Waldar Voir le message
    Erreur de copier coller, je suppose que vous avez écrit CREATE OR REPLACE VIEW CDEV.TEST_U_USER ?
    Tout a fait, je corrige la question

  7. #7
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 460
    Points : 8 074
    Points
    8 074
    Par défaut
    Pour créer une vue sur une table qui ne vous appartient pas, c'est comme en PL/SQL : il faut avoir sur cette table un privilège direct, et pas à travers un rôle.
    Consultant / formateur Oracle indépendant
    Certifié OCP 12c, 11g, 10g ; sécurité 11g

    Ma dernière formation Oracle 19c publiée sur Linkedin : https://fr.linkedin.com/learning/oracle-19c-l-administration

  8. #8
    Membre confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 137
    Points : 621
    Points
    621
    Par défaut
    Citation Envoyé par Pomalaix Voir le message
    Pour créer une vue sur une table qui ne vous appartient pas, c'est comme en PL/SQL : il faut avoir sur cette table un privilège direct, et pas à travers un rôle.
    Je me suis accordé tous les droits
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GRANT ALL PRIVILEGES TO USRORA1 ON SITE."U@USER" ;
    Mais je ne peux toujours pas créer ma vue (je me suis bien déconnecté puis reconnecté en USRORA1)

  9. #9
    Membre confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 137
    Points : 621
    Points
    621
    Par défaut
    Après 4 heures de recherches, j'ai fini par trouver la réponse :

    Etant donné que j'essaye de créer la vue sur le schéma CDEV, c'est l'utilisateur CDEV qui doit avoir les permissions d'accéder au schéma SITE

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GRANT ALL PRIVILEGES TO CDEV
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE OR REPLACE VIEW CDEV.TEST_U_USER AS (
        SELECT b."IDCOMPLEMENT" AS COL1
        FROM SITE."U@USER" b
        WHERE (b."CONNECTIONAUTORISEE" <> 'N')
    )

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/05/2009, 14h23
  2. ORA-00942: table or view does not exist
    Par xoco dans le forum Langage SQL
    Réponses: 9
    Dernier message: 12/01/2009, 20h11
  3. Réponses: 0
    Dernier message: 30/12/2008, 11h19
  4. [XIR2][WebI][Designer] Table or View does not exist
    Par Julien59 dans le forum Webi
    Réponses: 2
    Dernier message: 25/09/2008, 15h06
  5. Réponses: 2
    Dernier message: 26/10/2007, 15h05

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