salut tt le monde je travaille avec oracle 10g sous windows XP
j'essaye de charger des données d'un fichier plat (.csv) a travers sqlloader
le détail de la création de ma table est:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
CREATE TYPE Tlien_config AS OBJECT
(id_config INTEGER,
id_lien VARCHAR2(30),
frequence VARCHAR2(30),
sous_bande VARCHAR2(30),
comment_config VARCHAR2(30),
distance_lien REAL,
site_a VARCHAR2(30),
latitude_a REAL,
longitude_a REAL,
azimut_a REAL,
equipement_a VARCHAR2(30),
diam_a REAL,
h_ant_a REAL,
h_building_a REAL,
h_roof_a REAL,
space_div_a VARCHAR2(30),
sep_ant_a REAL,
h_tower_a REAL,
polar_a VARCHAR2(30),
canaux_a INTEGER,
frequence_a REAL,
site_b VARCHAR2(30),
latitude_b REAL,
longitude_b REAL,
azimut_b REAL,
equipement_b VARCHAR2(30),
diam_b REAL,
h_ant_b REAL,
h_building_b REAL,
h_roof_b REAL,
space_div_b VARCHAR2(30),
sep_ant_b REAL,
h_tower_b REAL,
polar_b VARCHAR2(30),
canaux_b INTEGER,
frequence_b REAL,
power_trans REAL,
level_recep REAL,
date_ajout date
)
/
 
 
 
 
CREATE TABLE lien_config OF Tlien_config
(PRIMARY KEY(id_config)
)
;
 
CREATE sequence SEQ_LIEN_CONFIG start with 1 increment by 1;
 
 
create OR REPLACE trigger declench
before insert on lien_config REFERENCING NEW AS NEW for each row WHEN (new.id_config IS NULL AND new.date_ajout IS NULL)
begin
select SEQ_LIEN_CONFIG.nextval into :new.id_config from dual;
select sysdate into :new.date_ajout from dual;
end;
/
un exemple de mon fichier plat:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
GUEREP7 - GUEREP3;8 GHz;8 GHz (29.65)annex1;PHASE 3;40.278;GUEREP7;29.00627;-10.02376;239.037;8-16QAM-32E1(1+1);1.8;25.0;;;YES;1.8;7.0;;V;1.0;8059.02;GUEREP3;28.819555;-10.378056;58.8653;8-16QAM-32E1(1+1);1.8;27.0;;;YES;1.8;7.0;;V;;7747.75
LAAREP2 - LAAREP1;8 GHz;8 GHz (29.65)annex1;PHASE 3;21.149;LAAREP2;27.453056;-13.018056;208.884;8-16QAM-32E1(1+1);1.8;32.0;;;YES;1.8;7.0;;V;1.0;8059.02;LAAREP1;27.286112;-13.121667;28.8363;8-16QAM-32E1(1+1);1.8;32.0;;;YES;1.8;7.0;;V;;7747.75
TAFREP1 - LAAREP3;8 GHz;8 GHz (29.65)annex1;PHASE 3;29.763;TAFREP1;27.94139;-12.931111;185.098;8-16QAM-32E1(1+1);1.8;42.0;;;YES;1.8;7.0;;V;1.0;8059.02;LAAREP3;27.67389;-12.958056;5.08505;8-16QAM-32E1(1+1);1.8;36.0;;;YES;1.8;7.0;;V;;7747.75
TAFREP3 - TAFREP2;8 GHz;8 GHz (29.65)annex1;PHASE 3;13.35;TAFREP3;27.9325;-12.512222;297.175;8-16QAM-32E1(1+1);1.8;30.0;;;YES;1.8;7.0;;V;1.0;8059.02;TAFREP2;27.987232;-12.633078;117.118;8-16QAM-32E1(1+1);1.8;30.0;;;YES;1.8;7.0;;V;;7747.75
TNTREP3 - TNT-REP4;8 GHz;8 GHz (29.65)annex1;PHASE 3;7.722;TNTREP3;28.442034;-11.163492;236.689;8-16QAM-32E1(1+1);0.6;20.0;;;YES;0.6;7.0;;V;1.0;8059.02;TNT-REP4;28.403889;-11.229444;56.6573;8-16QAM-32E1(1+1);0.6;30.0;;;YES;0.6;7.0;;V;;7747.75
AHO-0007 - AHO-0008;38 GHz;38 GHZ (14);PHASE 3;2.826;AHO-0007;35.17222;-3.85708;164.611;38-QPSK-8E1(1+1);0.3;47.0;;;;;;50.0;V;1.0;38325.0;AHO-0008;35.14767;-3.84881;344.616;38-QPSK-8E1(1+1);0.3;29.7;17.7;12.0;;;;6.0;V;;37065.0
YOUREP2 - YOU-0007;38 GHz;38 GHz (7);PHASE 3;7.569;YOUREP2;32.13937;-8.58968;209.335;38-QPSK-4E1;0.6;26.0;;;;;;40.0;V;1.0;38321.5;YOU-0007;32.07993;-8.6291;29.3138;38-QPSK-4E1;0.6;19.8;12.8;7.0;;;;9.0;V;;37061.5
mon fichier de controle est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
LOAD DATA INFILE 'C:\Mes_tests\intermediaire\lien_config.csv'
append
INTO TABLE lien_config
FIELDS TERMINATED BY ';'
trailing nullcols
(
id_lien ,
frequence ,
sous_bande ,
comment_config ,
distance_lien ,
site_a ,
latitude_a ,
longitude_a ,
azimut_a ,
equipement_a ,
diam_a ,
h_ant_a ,
h_building_a ,
h_roof_a ,
space_div_a ,
sep_ant_a ,
h_tower_a ,
polar_a ,
canaux_a ,
frequence_a ,
site_b ,
latitude_b ,
longitude_b ,
azimut_b ,
equipement_b ,
diam_b ,
h_ant_b ,
h_building_b ,
h_roof_b ,
space_div_b ,
sep_ant_b ,
h_tower_b ,
polar_b ,
canaux_b ,
frequence_b ,
power_trans ,
level_recep 
)
je lance sqlloader a partir d'un fichier batch (à travers une application java), le voila mon fichier batch:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
cd C:\Documents And Settings\mohamed_elaoumari
sqlldr userid=SYSTEM/wana control=C:\Mes_tests\controles\lien_config.ctl log=C:\Mes_tests\logs\lien_config.log bad=C:\Mes_tests\bads\lien_config.bad discard=C:\Mes_tests\bads\lien_config.dis direct=false errors=0
exit
mais le chargement ne s'effectue pas suite a une erreur, le détail du fichier log est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
 
 
SQL*Loader: Release 10.1.0.2.0 - Production on Mer. Mai 16 11:03:26 2007
 
Copyright (c) 1982, 2004, Oracle.  All rights reserved.
 
Fichier de contrôle :   C:\Mes_tests\controles\lien_config.ctl
Fichier de données :      C:\Mes_tests\intermediaire\lien_config.csv
  Fichier BAD :     C:\Mes_tests\bads\lien_config.bad
  Fichier DISCARD : C:\Mes_tests\bads\lien_config.dis
 (Allouer tous les rebuts)
 
Nombre à charger : ALL
Nombre à sauter: 0
Erreurs permises: 0
Tableau de liens :     64 lignes, maximum de 256000 octets
Continuation :    aucune spécification
Chemin utilisé:      Classique
 
Table LIEN_CONFIG, chargé à partir de chaque enregistrement physique.
Option d'insertion en vigueur pour cette table : APPEND
option TRAILING NULLCOLS effective
 
   Nom de colonne               Position   Long.  Séparat. Encadrem. Type de données
------------------------------ ---------- ----- ---- ---- ---------------------
ID_LIEN                             FIRST     *   ;       CHARACTER            
FREQUENCE                            NEXT     *   ;       CHARACTER            
SOUS_BANDE                           NEXT     *   ;       CHARACTER            
COMMENT_CONFIG                       NEXT     *   ;       CHARACTER            
DISTANCE_LIEN                        NEXT     *   ;       CHARACTER            
SITE_A                               NEXT     *   ;       CHARACTER            
LATITUDE_A                           NEXT     *   ;       CHARACTER            
LONGITUDE_A                          NEXT     *   ;       CHARACTER            
AZIMUT_A                             NEXT     *   ;       CHARACTER            
EQUIPEMENT_A                         NEXT     *   ;       CHARACTER            
DIAM_A                               NEXT     *   ;       CHARACTER            
H_ANT_A                              NEXT     *   ;       CHARACTER            
H_BUILDING_A                         NEXT     *   ;       CHARACTER            
H_ROOF_A                             NEXT     *   ;       CHARACTER            
SPACE_DIV_A                          NEXT     *   ;       CHARACTER            
SEP_ANT_A                            NEXT     *   ;       CHARACTER            
H_TOWER_A                            NEXT     *   ;       CHARACTER            
POLAR_A                              NEXT     *   ;       CHARACTER            
CANAUX_A                             NEXT     *   ;       CHARACTER            
FREQUENCE_A                          NEXT     *   ;       CHARACTER            
SITE_B                               NEXT     *   ;       CHARACTER            
LATITUDE_B                           NEXT     *   ;       CHARACTER            
LONGITUDE_B                          NEXT     *   ;       CHARACTER            
AZIMUT_B                             NEXT     *   ;       CHARACTER            
EQUIPEMENT_B                         NEXT     *   ;       CHARACTER            
DIAM_B                               NEXT     *   ;       CHARACTER            
H_ANT_B                              NEXT     *   ;       CHARACTER            
H_BUILDING_B                         NEXT     *   ;       CHARACTER            
H_ROOF_B                             NEXT     *   ;       CHARACTER            
SPACE_DIV_B                          NEXT     *   ;       CHARACTER            
SEP_ANT_B                            NEXT     *   ;       CHARACTER            
H_TOWER_B                            NEXT     *   ;       CHARACTER            
POLAR_B                              NEXT     *   ;       CHARACTER            
CANAUX_B                             NEXT     *   ;       CHARACTER            
FREQUENCE_B                          NEXT     *   ;       CHARACTER            
POWER_TRANS                          NEXT     *   ;       CHARACTER            
LEVEL_RECEP                          NEXT     *   ;       CHARACTER            
 
la valeur utilisée pour le paramètre ROWS est passée de 64 à 26
Enregistrement 1 : Rejeté - Erreur sur table LIEN_CONFIG, colonne DISTANCE_LIEN.
ORA-01722: Nombre non valide
 
\\MAXIMUM ERROR COUNT EXCEEDED - Les statistiques données ci-dessus résultent d'une exécution partielle.
 
Table LIEN_CONFIG :
  Chargement réussi de 0 Lignes.
  1 Ligne chargement impossible dû à des erreurs de données.
  0 Lignes chargement impossible car échec de toutes les clauses WHEN.
  0 Lignes chargement impossible car tous les champs étaient non renseignés.
 
 
Espace affecté au tableau de liens :                 248196 octets(26 lignes)
Octets de tampon de lecture : 1048576
 
Nombre total d'enregistrements logiques ignorés :          0
Nombre total d'enregistrements logiques lus :            26
Nombre total d'enregistrements logiques rejetés :         1
Nombre total d'enregistrements logiques mis au rebut :        0
 
Le début de l'exécution a été effectué sur Mer. Mai   16 11:03:26 2007
La fin de l'exécution a été effectuée sur Mer. Mai   16 11:03:26 2007
 
Temps écoulé (ELAPSED) :     00:00:00.27
Temps processeur (CPU) :    00:00:00.03
est ce que qlq'1 a une idée ? parce que je suis vraiment bloqué et merci d'avance pour vos suggestions