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

 PostgreSQL Discussion :

Erreur sur création d'une vue


Sujet :

PostgreSQL

  1. #1
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut Erreur sur création d'une vue
    J'essaie de créer la vue suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    CREATE OR REPLACE VIEW "CineDoc"."Personne_Pays" AS
    SELECT pe."Per_Id" AS IdPersonne,
      pe."Per_NomReel" AS NomReel,
      pe."Per_PrenomReel" AS PrenomReel,
      pe."Per_NomPublic" AS NomPublic,
      pe."Per_PrenomPublic" AS PrenomPublic,
      pe."Per_Sexe" AS Sexe,
      pe."Per_Commentaire" AS Commentaire,
      p."P_Id" AS IdPaysNaissance,
      p."P_Code" AS CodePaysNaissance,
      p."P_NomFr" AS PaysNaissanceFr,
      CASE
        WHEN pe."Per_Sexe" = 'M' THEN p."P_NationaliteMasc"
        WHEN pe."Per_Sexe" = 'F' THEN p."P_NationaliteFem"
        ELSE 'Inconnue'
      END AS Nationalite
    FROM "CineDoc"."Personne" AS pe
    INNER JOIN "CineDoc"."Personne_Pays" AS pp ON pe."Per_Id" = pp."Per_P_IdPersonne"
      INNER JOIN "CineDoc"."Pays" AS p ON pp."Per_P_IdPays" = p."P_Id";
    COMMENT ON VIEW "CineDoc"."Personne_Pays" IS 'Personnes avec le pays de naissance en clair';
    Et pgAdmin me donne le message d'erreur suivant :
    ERROR: "Personne_Pays" is not a view
    Je sais bien que ce n'est pas une vue puisque c'est une table, qu'elle existe bien avec ce nom et ces colonnes là !

    Je précise que si j'exécute la requête SELECT de cette vue, il n'y a pas d'erreur !

    Pourquoi voudrait-il forcément que ce soit une vue ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  2. #2
    Membre éprouvé Avatar de Oishiiii
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    508
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 508
    Points : 1 104
    Points
    1 104
    Par défaut
    Bonjour,

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    CREATE OR REPLACE VIEW "CineDoc"."Personne_Pays"
    ...
    INNER JOIN "CineDoc"."Personne_Pays"
    ...
    Tu ne serais pas en train d'essayer de créer une vue portant le nom d'une table déjà existante ?

    Il me semble bien que dans un schéma (base de donnée) il ne peux pas y avoir deux objets portant le même nom (que ce soit table, vues, sp, etc..).

  3. #3
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Bien vu !
    Faut que je nomme ma vue autrement !
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

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

Discussions similaires

  1. Erreur de création d'une vue
    Par bm dans le forum Requêtes
    Réponses: 4
    Dernier message: 14/05/2014, 17h22
  2. Erreur sur création d'une clé primaire
    Par Just-Soft dans le forum SQL
    Réponses: 6
    Dernier message: 09/08/2011, 10h32
  3. Erreur sur création d'une fonction
    Par mister3957 dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 30/04/2010, 16h10
  4. [VBA-E]erreur sur création d'une barre de menu
    Par roseau dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 14/03/2007, 11h17
  5. Réponses: 26
    Dernier message: 27/04/2005, 11h29

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