Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Outils > SQL*Loader
SQL*Loader Forum d'entraide sur Oracle SQL*Loader
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/12/2006, 17h14   #1
Invité de passage
 
Inscription : décembre 2006
Messages : 10
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 10
Points : 0
Points : 0
Par défaut SQL PLUS et SQL LOADER

Bonjour,
je cherche à faire un appel à sqlldr depuis ma console SQLPLUS....
savez vous comment faire ?
Evidemment, SqlPlus ne connait pas la commande sqlldr,
je peux depuis SQLPLUS appeler une procédure stockée, mais dans cette procédure un sqlldr ne marche pas non plus...
Y a t il un moyen de m'en sortir ?
Si par exemple, depuis une procédure stockée je peux charger un fichier CSV dans une table (avec une méthode autre que sqlldr ?), je suis heureux... dites moi la commande j'irai googler.

Et oui, je sais, sqlldr est une commande NORMALEMENT appelée depuis ma console une fois que je suis connecté à ma base de données, mais là je fais un script utilisateur... le gars n'utilisera que SQLPLUS pour travailler, pas le choix...

Merci
JC
jcmartin01 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2006, 18h01   #2
Xo
Expert Confirmé
 
Avatar de Xo
 
Inscription : janvier 2005
Messages : 2 701
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : janvier 2005
Messages : 2 701
Points : 3 237
Points : 3 237
Envoyer un message via Skype™ à Xo
Salut,

c'est ennuyeux, comme contrainte ...

Tu peux peut-être t'inspirer de ces threads :
- Lancement d'un shell Unix dans un proc stockée
- Lancer un exécutable en PL/SQL
__________________
"Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément." Nicolas Boileau

"Expliquer empêche de comprendre si cela dispense de chercher"

Quiz Oracle : venez tester vos connaissances !

La FAQ Oracle : 138 réponses à vos questions
Aidez-nous à la compléter
Xo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2006, 18h16   #3
Membre Expert
 
Avatar de nuke_y
 
Inscription : mai 2004
Messages : 1 812
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 1 812
Points : 1 609
Points : 1 609
Code :
1
2
3
4
5
SELECT 1 FROM DUAL;
 
host sqlldr
 
SELECT 1 FROM DUAL;
Ca appelle sqlldr depuis ton script SQL*Plus. Si tu colles ça dans un fichier test.sql et que tu tapes dans sqlplus @test.sql ça donnera ça :
Code :
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
         1
----------
         1
 
 
SQL*Loader: Release 9.2.0.1.0 - Production ON Me Dec 6 18:09:43 2006
 
Copyright (c) 1982, 2002, Oracle Corporation.  ALL rights reserved.
 
 
Syntaxe : SQLLDR keyword=value [,keyword=value,...]
 
Mots-clÚs valides :
 
    userid -- ORACLE username/password
   control -- Control file name
       log -- Log file name
       bad -- Bad file name
      DATA -- Data file name
   discard -- Discard file name
discardmax -- Number of discards to allow          (Tous par dÚfaut)
      skip -- Number of logical records to skip    (0 par dÚfaut)
      LOAD -- Number of logical records to load    (Tous par dÚfaut)
    errors -- Number of errors to allow            (50 par dÚfaut)
      rows -- Number of rows in conventional path bind array or between direct p
ath DATA saves
      (Par defaut: AccÞs conventionnel: 64, AccÞs direct: tous)
  bindsize -- Size of conventional path bind array in bytes  (256000 par dÚfaut)
 
    silent -- Suppress messages during run (header,feedback,errors,discards,part
itions)
    direct -- use direct path                      (FALSE par dÚfaut)
   parfile -- parameter file: name of file that contains parameter specification
s
  parallel -- do parallel load                     (FALSE par dÚfaut)
      file -- File to allocate extents from
skip_unusable_indexes -- disallow/allow unusable indexes or index partitions  (F
ALSE par dÚfaut)
skip_index_maintenance -- do not maintain indexes, mark affected indexes as unus
able  (FALSE par dÚfaut)
  readsize -- Size of Read buffer                  (1048576 par dÚfaut)
external_table -- use external table for load; NOT_USED, GENERATE_ONLY, EXECUTE
 (NOT_USED par dÚfaut)
columnarrayrows -- Number of rows for direct path column array  (5000 par dÚfaut
)
streamsize -- Size of direct path stream buffer in bytes  (256000 par dÚfaut)
multithreading -- use multithreading in direct path
 resumable -- enable or disable resumable for current session  (FALSE par dÚfaut
)
resumable_name -- text string to help identify resumable statement
resumable_timeout -- wait time (in seconds) for RESUMABLE  (7200 par dÚfaut)
date_cache -- size (in entries) of date conversion cache  (1000 par dÚfaut)
 
REMARQUE : Les paramÞtres de ligne de commande doivent Ûtre indiquÚs par
position ou par mots-clÚs. Un exemple du cas prÚcÚdent est 'sqlldr
scott/tiger foo' ; un exemple du dernier cas est 'sqlldr control=foo
userid=scott/tiger'. ON peut indiquer des paramÞtres par leur position
avant, mais pas aprÞs des paramÞtres indiquÚs par mots-clÚs. Par exemple,
'sqlldr scott/tiger control=foo logfile=log' est autorisÚ, mais
'sqlldr scott/tiger control=foo log' ne l'est pas, mÛme si la
position du paramÞtre 'log' est correcte.
 
 
         1
----------
         1
__________________
Il vaut mieux monopoliser son intelligence sur des bêtises que sa bêtise sur des choses intelligentes.

Mon combat pour les droits des consommateurs face aux abus des grandes marques.
nuke_y est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2006, 08h04   #4
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
pourquoi ne pas faire une table externe dans ce cas ?
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2006, 10h03   #5
Membre Expert
 
Avatar de nuke_y
 
Inscription : mai 2004
Messages : 1 812
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 1 812
Points : 1 609
Points : 1 609
Sql*loader a ptet des fonctions que n'ont pas les tables externes ? Comme une gestion des rejets, un log, etc.
__________________
Il vaut mieux monopoliser son intelligence sur des bêtises que sa bêtise sur des choses intelligentes.

Mon combat pour les droits des consommateurs face aux abus des grandes marques.
nuke_y est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h40.


 
 
 
 
Partenaires

Hébergement Web