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 :

ERROR: insert or update on table "ecole" violate


Sujet :

PostgreSQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut ERROR: insert or update on table "ecole" violate
    Bonjour,
    j'ai un programme SQL qui me bloque avec le message suivant :

    ERROR: insert or update on table "ecoles" violates foreign key constraint "ecoles_zones_fk"
    DETAIL: Key (ref_zone)=(2) is not present in table "zones".

    Le programme est :

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    /*suppression des tables si elles existent*/
    DROP TABLE ZONES CASCADE;
    DROP TABLE COORDONNEES CASCADE; 
    DROP TABLE ECOLES ;
    /* suppression des séquences si elles existent*/
    DROP SEQUENCE seq_coordonnees ;
    DROP SEQUENCE seq_zones ;
    DROP SEQUENCE seq_ecoles ; 
    /*création des séquences */
    CREATE SEQUENCE seq_coordonnees INCREMENT 1 START 1;
    CREATE SEQUENCE seq_zones INCREMENT 1 START 1;
    CREATE SEQUENCE seq_ecoles INCREMENT 1 START 1; 
    /* création des tables*/
    CREATE TABLE COORDONNEES (
    NUM INTEGER NOT NULL DEFAULT NEXTVAL('seq_coordonnees'),
    X INTEGER NOT NULL,
    Y INTEGER NOT NULL,
    CONSTRAINT COORDONNEES_PK PRIMARY KEY(NUM)
    );
    CREATE TABLE ZONES (
    EMME2 INTEGER NOT NULL PRIMARY KEY,
    REF_COORD INTEGER NOT NULL,
    NOM VARCHAR (20), 
    CONSTRAINT ZONES_COORDONNEES FOREIGN KEY (REF_COORD) REFERENCES COORDONNEES (NUM)
    );
     
    CREATE TABLE ECOLES (
    NUM INTEGER NOT NULL DEFAULT NEXTVAL('seq_ecoles')CONSTRAINT ECOLES_PK PRIMARY KEY,
    NOM VARCHAR(20),
    REF_COORD INTEGER NOT NULL,
    REF_ZONE INTEGER NOT NULL,
    CONSTRAINT ECOLES_ZONES_FK FOREIGN KEY(REF_ZONE) REFERENCES ZONES(EMME2),
    CONSTRAINT ECOLES_COORDONNEES_FK FOREIGN KEY(REF_COORD) REFERENCES COORDONNEES(NUM)
    );
    /* insertion des données
     
    INSERT INTO ECOLES (NUM, NOM, REF_COORD, REF_ZONE) VALUES (DEFAULT, 'Ste_Marie', 2 , 2 );
    INSERT INTO ECOLES (NUM, NOM, REF_COORD, REF_ZONE) VALUES (DEFAULT, 'Air_Pur', 1, 1);
     
    INSERT INTO ZONES (EMME2, REF_COORD, NOM) VALUES (8001, 1, 'Seraing');
    INSERT INTO ZONES (EMME2, REF_COORD, NOM) VALUES (8002, 2, 'Ans');
     
    INSERT INTO COORDONNEES ( X, Y) VALUES (3, 2);
    INSERT INTO COORDONNEES ( X, Y) VALUES (7, 9);
     
     
    SELECT * FROM ZONES;
    SELECT * FROM COORDONNEES; 
    SELECT * FROM ECOLES;
    y a t'il une bonne volonté pour me débloquer
    Merci

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Points : 1 053
    Points
    1 053
    Par défaut
    C'est une blague c'est ca?
    Prends 10 secondes pour réfléchir à l'ordre de tes inserts et tu trouveras la solution.

Discussions similaires

  1. Insert ou update sur table mysql
    Par moonshine972 dans le forum C#
    Réponses: 6
    Dernier message: 05/04/2011, 10h28
  2. Insert or Update sans table de référence
    Par LDPDC dans le forum SQL
    Réponses: 4
    Dernier message: 25/05/2009, 14h47
  3. ERROR:insert or update on table "ecol" violates fo
    Par doulel dans le forum Langage SQL
    Réponses: 3
    Dernier message: 16/04/2006, 10h19

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