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

PL/SQL Oracle Discussion :

PL/SQL: dispatche dans des fichiers


Sujet :

PL/SQL Oracle

  1. #1
    Membre habitué
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Points : 166
    Points
    166
    Par défaut PL/SQL: dispatche dans des fichiers
    Bonjour,

    je dois créer une procédure qui dispatche des données dans des fichiers.
    Pour l'instant il n'y a pas beaucoup de données, donc on m'a dit de les disptacher dans 2 fichiers.
    J'ai donc fait ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    IF (MOD(DONNES,2)=1) THEN
      INSTRUCTION FICHIER1;
    ELSE
      INSTRUCTION FICHIER2;
    END IF;
    Je mets donc les lignes paires dans le premierset les lignes impaires dans le second.
    Mais je me suis dit que par la suite il était possible qu'on passe à 3 voire 4 fichiers et plus.
    et donc il faudrait tout redevelopper.
    Je voudrais donc créer dans ma procédure un système qui puisse gérer cela.
    J'ai donc créer d'abord une variable MAX_FI:=2.
    Il n'y aurait plus qu'à la changer et ainsi tout serait pris en compte.
    Mais Alors comment faire le dispatche dans 3 fichiers, 4,5,6.
    Mon système de lignes paires et impaires n'est plus d'actualité.
    J'essaye de trouver un moyen mais je n'arrive pas à trouver.
    Je ne sais pas si je suis dans le bon forum mais si quelqu'un peut m'orienter vers une solution, ce serait très sympa.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 106
    Points : 104
    Points
    104
    Par défaut
    bonjour,

    quels sont les critères de dispatch?

    est ce une obligation ou juste un choix personnel?

    Si c un choix, tu peux mettre m importe quel critère exemple : taille max de fichier, nombre max d enregistrement...

    sinon si c une obligation tu dois definir les critères de ton obligation.
    Amine

  3. #3
    Membre habitué
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Points : 166
    Points
    166
    Par défaut
    En fait la taille du fichier ne doit pas dépasser un certain nombre de lignes.
    Donc comme on doit avoir 2 fichiers minimums, mon chef m'a fortement concseillé de faire un dispatche des données entre les 2 fichiers.
    Mais par la suite si mon nombre de fichiers augmentent à cause de données trop nombreuses mon système ne fonctionnera plus et je serais obligée de changer ma procédure.
    C'est pour cela que je voudrais dès maintenant le prévoir.

    Définir les critères de mon obligation?
    Ce'st à dire?

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 106
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par claralavraie
    En fait la taille du fichier ne doit pas dépasser un certain nombre de lignes.
    Donc comme on doit avoir 2 fichiers minimums, mon chef m'a fortement concseillé de faire un dispatche des données entre les 2 fichiers.
    Mais par la suite si mon nombre de fichiers augmentent à cause de données trop nombreuses mon système ne fonctionnera plus et je serais obligée de changer ma procédure.
    C'est pour cela que je voudrais dès maintenant le prévoir.

    Définir les critères de mon obligation?
    Ce'st à dire?
    donc c une obligation, au fait de taille tout simplement si j ai bien compris.

    Maintenant, il faut orienter ta procedure dans ce sens et oublier les paires et impaires.

    donc, fixe toi une variable de nombre max de lignes et fais ta boucle dans ce sens!
    Amine

  5. #5
    Membre habitué
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Points : 166
    Points
    166
    Par défaut
    Autre solution:
    j'ai un variable représentant le nombre maximum de fichiers.
    je divise mon nombre de données à insérer dans mes fichiers par mon nombre de fichiers.
    Cela peut fonctionner non?

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 106
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par claralavraie
    Autre solution:
    j'ai un variable représentant le nombre maximum de fichiers.
    je divise mon nombre de données à insérer dans mes fichiers par mon nombre de fichiers.
    Cela peut fonctionner non?

    oui ca peut fonctionner mais dans ce cas ta pas de taille max du fichier (donc nombre max de lignes par fichier) !!
    Amine

  7. #7
    Membre habitué
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Points : 166
    Points
    166
    Par défaut
    j'avais pensé à faire cela, une variable max_ligne.
    Mais j'ai une table dans laquelle se trouve toutes mes données.
    Imaginons que mon nombre max de lignes soit de 13000/fichier.
    Dans ces 13000 lignes , il y en a 4 que je construit et ensuite selon le nombre de lignes prises de la table je dois faire différent compteurs.
    Par exemple si j'insère 4000 lignes, selon les informations contenues dans ces données je rajoute 1000 lignes en plus. mais des fois ça peut être 2000 lignes en plus etc...
    donc je ne peux jamais savoir ou je dois stopper..
    après je peux me fixer une limite. je ne prends pas plus de 6000 lignes.
    comme ça, ça me laisse une marge, mais bon si je n'ai que 5000 lignes et que je dois remplir 2 fichiers alors que je fixais une limite à 6000 lignes, il ne va me remplir qu'un fichier...
    C'est donc plus simple ma solution non?

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 106
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par claralavraie
    j'avais pensé à faire cela, une variable max_ligne.
    Mais j'ai une table dans laquelle se trouve toutes mes données.
    Imaginons que mon nombre max de lignes soit de 13000/fichier.
    Dans ces 13000 lignes , il y en a 4 que je construit et ensuite selon le nombre de lignes prises de la table je dois faire différent compteurs.
    Par exemple si j'insère 4000 lignes, selon les informations contenues dans ces données je rajoute 1000 lignes en plus. mais des fois ça peut être 2000 lignes en plus etc...
    donc je ne peux jamais savoir ou je dois stopper..
    après je peux me fixer une limite. je ne prends pas plus de 6000 lignes.
    comme ça, ça me laisse une marge, mais bon si je n'ai que 5000 lignes et que je dois remplir 2 fichiers alors que je fixais une limite à 6000 lignes, il ne va me remplir qu'un fichier...
    C'est donc plus simple ma solution non?

    Si c'est comme ca je trouve que ta solution ferait l affaire, mais je crois que t aura le mm soucis pour remplir tes fichiers!!!
    Amine

  9. #9
    Membre habitué
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Points : 166
    Points
    166
    Par défaut
    Oui c'est ce que je crains...
    avant de remplir mes fichiers, je remplis toutes ces données dans une table temporaire....
    peut être faudrait il qu'à la fin je fasse une boucle sur cette table.
    cela eviterait peut être de depasser le nombre de lignes maximum....

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 106
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par claralavraie
    Oui c'est ce que je crains...
    avant de remplir mes fichiers, je remplis toutes ces données dans une table temporaire....
    peut être faudrait il qu'à la fin je fasse une boucle sur cette table.
    cela eviterait peut être de depasser le nombre de lignes maximum....
    oui je crois que si tu fais une boucle te permettant de remplir une ligne par fichier cela resoudra le probleme sauf que qd tu atteindra le max de tous les fichiers tu sera obligée de rechanger ta procedure!

    juste un rappel, c pour des raisons de backup que tu dispatches?!
    Amine

  11. #11
    Membre habitué
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Points : 166
    Points
    166
    Par défaut
    ce sont des fichiers qui sont envoyés sur des serveurs et sont traités la nuit..
    Ainsi les personnes concernées ont toutes les informations de la veille...

    Donc bref cela ne resoud en rien mon problème...
    bon je vais continuer à chercher...

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 106
    Points : 104
    Points
    104
    Par défaut
    Citation Envoyé par claralavraie
    ce sont des fichiers qui sont envoyés sur des serveurs et sont traités la nuit..
    Ainsi les personnes concernées ont toutes les informations de la veille...

    Donc bref cela ne resoud en rien mon problème...
    bon je vais continuer à chercher...
    Bon courage
    Amine

Discussions similaires

  1. Importer des données de sql server dans un fichier excel
    Par sab_info dans le forum Développement
    Réponses: 2
    Dernier message: 30/01/2013, 09h45
  2. Réponses: 3
    Dernier message: 22/01/2009, 15h11
  3. Réponses: 0
    Dernier message: 11/02/2008, 11h37
  4. Programme de remplacement de texte dans des fichiers
    Par Invité4 dans le forum Linux
    Réponses: 13
    Dernier message: 12/11/2006, 16h06
  5. [Rech. Comp.] Lire et écrire dans des fichiers XML
    Par Rodrigue dans le forum C++Builder
    Réponses: 4
    Dernier message: 26/08/2005, 20h48

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