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 :

Probleme avec SQL Script


Sujet :

SQL Oracle

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2005
    Messages : 197
    Points : 74
    Points
    74
    Par défaut Probleme avec SQL Script
    Bonjour,

    Je suis nouveau avec Oracle. Je dois dénormaliser une table en renvoyant des enregistrements vers la table qui content la FK. Voir l'image. Bien sûr, il s'agit d'une relation one to many donc, il y aura plusieurs enregistrements a créer.

    Il me serait assez facile de programmer cela en .NET mais je dois plutot créer un script SQL. je n'ai jamais travailler avec cela a part créer des requêtes primaires. Pourriez-vous m'aider SVP?

    merci

    Nom : sql script.JPG
Affichages : 128
Taille : 24,5 Ko

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 786
    Points
    30 786
    Par défaut
    Il suffit juste de faire une jointure entre tes deux tables.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2005
    Messages : 197
    Points : 74
    Points
    74
    Par défaut
    Je suis nouveau avec Oracle mais je me debrouile quand meme en SQL :-).

    J'aurais du etre plus clair. Je dois remonter une table en creant de nouveau enregistrement d'ou la denormalisation des deux tables. Mon probleme n'est pas de faire un requete SQL mais de creer une petit boucle en Script SQL qui va faire le travail. J'ai vu dans la doc qu'on peu declarer un curseur et faire des boucle for. C'est cela que je cherchais. Je ne savais juste pas ou commencer car la doc Oracle, je la trouve horrible.

    Merci.

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 786
    Points
    30 786
    Par défaut
    Pourquoi passer par un curseur alors que INSERT INTO ... SELECT ... ferait très bien le travail ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Membre éclairé Avatar de bstevy
    Homme Profil pro
    Solutions Architect
    Inscrit en
    Mai 2009
    Messages
    552
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Japon

    Informations professionnelles :
    Activité : Solutions Architect
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 552
    Points : 870
    Points
    870
    Par défaut
    Citation Envoyé par al1_24 Voir le message
    Pourquoi passer par un curseur alors que INSERT INTO ... SELECT ... ferait très bien le travail ?
    C'est le problème des développeurs quand ils rencontrent pour la premiere fois l'ensembliste... ils ont toujours envie de faire des curseurs...


    Bref, comme le dit Al1, insert select c'est bien ^^
    Si tu as besoin de plus d'aide, ca donne un truc comme ca :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    insert into table_cible (pk, champ1, FK, champ2) --champs de ta table cible
    select T1.PK
    ,T1.champ1
    ,T2.PK as FK
    ,T2.champ2
    from table1 T1 inner join table2 T2 on T1.FK = T2.PK
    ;
    et ca va t'inserer toutes tes lignes d'un coup, pas besoin de faire de curseur avec un commit à chaque insertion.

    Pour info, si tu as besoin au passage par exemple de rajouter une clef unique qui va remplacer ton couple de PK/FK, je pense par exemple à une séquence qui commence à 1 et qui va augmenter au fur et a mesure de tes lignes, tu peux le faire aussi directement dans ta requete. Pas la peine la non plus d'avoir un curseur qui fait un i++ ^^

Discussions similaires

  1. Problème avec mon script en Shell
    Par G.D.O dans le forum Linux
    Réponses: 8
    Dernier message: 05/07/2006, 16h40
  2. tres urgent : probleme avec sql server
    Par nourelhouda dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/03/2006, 11h19
  3. Probleme avec un script javascript->php
    Par leluis dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 23/03/2006, 15h32
  4. [langage] Problème avec un script ! :(
    Par shinux2004 dans le forum Langage
    Réponses: 6
    Dernier message: 16/02/2005, 15h12
  5. Problème avec un script ftp
    Par doohan dans le forum Linux
    Réponses: 2
    Dernier message: 25/06/2003, 17h47

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