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 Firebird Discussion :

pb d'insertions multiples


Sujet :

SQL Firebird

  1. #1
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 679
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 679
    Points : 954
    Points
    954
    Par défaut pb d'insertions multiples
    bonjour à tous

    voici le code de mes tables:
    code:
    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
     
    create table ORGANISMES(
        NUMERO_ORG VARCHAR(5) NOT NULL,                                                                             
        NOM_ORG    VARCHAR(30) NOT NULL,                                                                              
        ADRESSE_ORG VARCHAR(25) NOT NULL,                                                                              
        TELEPHONE_ORG VARCHAR(15) NOT NULL,                                                                           
        FAXE_ORG VARCHAR(15) NOT NULL,                                                                                
        MATIERES_PREMIERES VARCHAR(160) NOT NULL,                                                                  
        NOM_DIRIGEANT VARCHAR(30) NOT NULL,                                                                       
        SITUATION_GEOGRAPHIQUE VARCHAR(40) NOT NULL,                                                              
        NUMEROTORG varchar(5) not null,
         constraint PK_organismes primary key (NUMERO_ORG)
    );
    create table DEMANDES(
        NUMERO_DEM VARCHAR(5) NOT NULL,
        LIBELLE VARCHAR(60) NOT NULL,
        NOM_DEMANDEUR VARCHAR(20) NOT NULL,
        PRIORITE_DE_LA_DEMANDE INTEGER,                                                           
         constraint PK_demandes primary key (NUMERO_DEM)
    );
    create table FAIRE(
        NUMERO_DEM  VARCHAR(5) NOT NULL,
        NUMERO_ORG VARCHAR(5) NOT NULL,
         constraint PK_faire primary key (NUMERO_DEM, NUMERO_ORG)
    );
    les pk de mes tables sont generées automatiquement par des
    triggers sauf pour la table Faire.
    mon pb est le suivant:

    je voudrai que la table faire se remplisse automatiquement
    c'est à dire qu'a chaque fois que les pk de la table
    organismes et demandes sont mis jour les memes données(les PK)
    se retrouvent dans la table faire.
    Barbibulle en son temps m'avait éclairé dessus (PS ou TRIGGER)
    mais j'avoue que je n'est pris bonne note, et je m'escuse.
    si quelqu'un ou surtout barbibulle peut m'éclairer
    ou m'aider !! je nage en eau trouble!
    merci a tous

  2. #2
    jlf
    jlf est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 140
    Points : 49
    Points
    49
    Par défaut
    voudrai que la table faire se remplisse automatiquement
    c'est à dire qu'a chaque fois que les pk de la table
    organismes et demandes sont mis jour les memes données(les PK)
    se retrouvent dans la table faire
    je suppose que dans l'organisation logique de tes données DEMANDES est attachée à ORGANISMES dans une relation de 1 à plusieurs ? (plusieurs demandes possibles concernant un organisme)

    si oui il te suffit de matérialiser ce lien par une clé etrangère
    ajoutes à DEMANDE une colonne NUMERO_ORG et une contrainte foreign key de cette colonne sur sa correspondance dans ORGANISMES (évidemment l'user devra donner ce No d'une manière ou d'une autre)

    ceci fait tu pourras émarger FAIRE dans un trigger AFTER_INSERT de DEMANDES car les deux numéros seront connus dans la ligne nouvellement ajoutée de DEMANDES

    avec FireBird ça donnerait ce genre de code pour le trigger:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Insert Into FAIRE (NUMRO_DEM, NUMERO_ORG)
    VALUES (New.NUMERO_DEM, New.NUMERO_ORG)

  3. #3
    Membre éprouvé
    Homme Profil pro
    Benevole
    Inscrit en
    Mai 2004
    Messages
    1 679
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Benevole
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 679
    Points : 954
    Points
    954
    Par défaut
    ok je me remet au travail
    merci

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

Discussions similaires

  1. Requête d'insertion multiple avec 1 valeur fixe
    Par [DreaMs] dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/12/2005, 09h28
  2. [debutant][code] insert multiple de valeurs
    Par topaze dans le forum Oracle
    Réponses: 9
    Dernier message: 29/11/2005, 15h22
  3. procédure stockée insert multiple
    Par gigi34 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 20/09/2005, 10h37
  4. Insertion multiple à base de sous requête SELECT
    Par drinkmilk dans le forum Langage SQL
    Réponses: 8
    Dernier message: 14/04/2005, 16h34
  5. INSERT multiples avec : rs.AddNew et .Update
    Par M.Zip dans le forum ASP
    Réponses: 4
    Dernier message: 03/12/2004, 15h53

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