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

Shell et commandes POSIX Discussion :

Script KSH


Sujet :

Shell et commandes POSIX

  1. #1
    Membre à l'essai

    Homme Profil pro
    Développeur
    Inscrit en
    Février 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Février 2016
    Messages : 8
    Points : 12
    Points
    12
    Billets dans le blog
    1
    Par défaut Script KSH
    Bonjour,
    Actuellement, je travail sur le chargement d'une table oracle à partir d'un fichier plat séparé par ";". Mon script Ksh lance le script sql loader et charge ma table après avoir fait des contrôles et génère aussi des logs et des bades. Le chargement ce fait quotidiennement à travers un ETL qui lance le chargement. Pour plus de performance et pour garder mes données puisque mon script fait de l'annuler remplacer je souhaite :
    - D'abord, chargé mes données dans une table temporaire.
    - Ensuite, si les contrôles OK toute les lignes sont chargé dans ma table temporaire, je charge dans la table officielle, sinon kO je ne charge rien dans ma table officielle.
    Donc ma question :
    - Est-ce-que il serait possible en Ksh de charger les données d'une table OK sur une autre (c'est-à-dire : copier les données d'une table tempo OK dans la table officielle) ou faire une copier d'une table en ksh?
    - ou bien en sql loader vérifier le nombre de ligne dans un fichier.txt si = nombre de ligne de données chargées dans la table dans ce cas charge moi dans la table offici
    Merci d'avance, pour votre réponse.

  2. #2
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 459
    Points
    13 459
    Par défaut
    Bonjour

    La réponse est: oui.

    Par contre, je n'ai pas exactement compris la question.

    Il y a un outil pertinent pour traiter les fichiers plats séparés par des points-virgule: awk ou gawk.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  3. #3
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    Bonjour,

    àmha, cela est du ressort de sql.

    tu charges tes données dans une table temporaire avec sql,
    tu compares les données avec la table existante avec sql,
    tu mets à jour la table existante avec sql.

    les deux dernières opérations devraient pouvoir être réalisées dans une même requête.
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  4. #4
    Membre à l'essai

    Homme Profil pro
    Développeur
    Inscrit en
    Février 2016
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Février 2016
    Messages : 8
    Points : 12
    Points
    12
    Billets dans le blog
    1
    Par défaut
    Merci pour vos réponses, pour éclairer ma question :
    - Est-ce-que je peut parcourir les lignes d'un fichier.txt déposer dans un répertoire... /sas/dépôt en SQL , puis stocker le nombre de ligne fichier.txt (X) le script SQL qui le permet???.
    - ensuite, toujours en sql compter le nombre de ligne de ma table temporaire charger (Y), je suppose count (*) nomdematabletomp!! .
    if X = Y.
    donc ma table temporaire est bien charger, et en sql je fait du copier-coller dans une table officielle.
    comme ça me permet de charger ma table juste quand tous va bien. et pour éviter aussi de faire un double code KSH, la meme chose que la table tompo.
    Merci encore une fois pour vos réponses

  5. #5
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 459
    Points
    13 459
    Par défaut
    Pardon d'être brutal, mais ici, c'est pas le bureau du père-noël !
    Si tu as des questions évoluées de SQL, il faut demander ça dans le sous-forum SQL.

    Ici, tu trouveras de l'aide pour ce qui concerne les scripts, la manipulation de fichiers (texte ou non).

    Ton explication mélange allégrement SQL, ksh, awk. Il faut trier.
    Tu demandes "Est-ce possible ?". Mais oui. Tout est possible. Cependant, tout n'est pas souhaitable.
    N_BaH te dit de tout faire en SQL. Je partage son avis.

    if X = Y.
    donc ma table temporaire est bien charger, et en sql je fait du copier-coller dans une table officielle.
    Ça sent le Trouble Obsessionnel Compulsif. Tu vérifies et tu revérifies, et tu re-revérifies...
    Qu'est-ce qui te permet de penser que, si tu demandes le chargement, celui-ci soit mal fait ?
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

Discussions similaires

  1. Menu avec un script ksh ?
    Par insupien dans le forum Linux
    Réponses: 2
    Dernier message: 06/07/2006, 13h05
  2. [Sqlplus ] Appel depuis script KSH
    Par kasiop dans le forum Oracle
    Réponses: 2
    Dernier message: 27/01/2006, 10h25
  3. Script Ksh
    Par tonymontana4192 dans le forum Linux
    Réponses: 6
    Dernier message: 20/12/2005, 10h51
  4. Execution d'un script ksh distant
    Par jool dans le forum C++
    Réponses: 2
    Dernier message: 18/03/2005, 10h10
  5. Script ksh - Valeur maximal d'un PID
    Par fidififouille dans le forum Linux
    Réponses: 7
    Dernier message: 09/08/2004, 10h10

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