SQL LOADER avec des paramètres

Bonjour,

J'aimerais créer un script qui lance le chargement de plusieurs fichiers plats dans les tables correspondant.

sqlldr user/user@DB direct=y control=$1 data=$2
bad=$3 discard= $4 log=$5

faut t'il créer une procedure pl/sql ( mais comment lancer sql loader dans pl ?) ou un script ksh ( que je connais pas trés bien)?

merci de me donner une petite lumière
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    bonsoir,

    Pour réaliser ce que tu souhaites faire, c'est bien en ksh qu'il faut le faire (si tu est sous unix)

    cdt
    1. merci

      mais y'as juste un petit truc que j'ai oublié de signaler c'est que les parametre vienne d'une table sql

      param 1=Table.champ
      param2= table.cham2
      ....

      et ca change la donne.

      avez vous uneidée

      voili voilo
      1. Modérateur
        C'est tout simple, tu fais un script qui lance un sqlplus qui génère le script final puis lance ce script généré par le sqlplus :
        # genere.ksh
        
        sqlplus -s user/user@DB <<finsql
        set space 0
        set pages 0
        set newpage 0
        set verify off
        set pause off
        set hea off
        set feedback off
        
        spool lance_charg.ksh
        
        select 'sqlldr user/user@DB direct=y control='||champ1||' data='||champ2||' bad='||champ3||' discard='||champ4||' log='||champ5 from table ;
        finsql
        
        ksh lance_charg.ksh