salut tt le monde je travaille avec oracle 10g sous windows XP
je voudrais utiliser sql loader pour charger des données d'un fichier plat (.csv) directement dans ma base de données mais avec une colonne id qui s'auto-incrémente à chaque insertion
voici ma table:
j'ai créé une séquence géré par un trigger :
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 CREATE TYPE Tlobo AS OBJECT ( id INTEGER, name VARCHAR2(30) ) / CREATE TABLE lobo OF Tlobo (PRIMARY KEY(id) ) ;
mon fichier de controle est:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 CREATE sequence SEQ_LOBO start with 1 increment by 1; create trigger trig before insert on lobo for each row WHEN (new.id IS NULL) begin select SEQ_LOBO.nextval into : new.id from dual; end; /
je lance sqlloader a partir d'un fichier batch:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 LOAD DATA INFILE 'C:\Mes_tests\lobo.csv' APPEND INTO TABLE lobo FIELDS TERMINATED BY ';' trailing nullcols ( name )
mais à la création du trigger il me signale que le trigger est crée avec des erreurs de compilation
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\controlecsv_lobo.ctl log=C:\Mes_tests\logs\journal_lobo.log bad=C:\Mes_tests\bads\bad_lobo.xls discard=C:\Mes_tests\bads\disard_lobo.xls direct=y errors=0 exit
et le fichier log de sqlloader :
est ce que qlq'1 a une idée sur ce qui cloche et merci d'avance
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 SQL*Loader: Release 10.1.0.2.0 - Production on Lun. Mai 14 09:51:01 2007 Copyright (c) 1982, 2004, Oracle. All rights reserved. Fichier de contrôle : C:\Mes_tests\controlecsv_lobo.ctl Fichier de données : C:\Mes_tests\lobo.csv Fichier BAD : C:\Mes_tests\bads\bad_lobo.xls Fichier DISCARD : C:\Mes_tests\bads\disard_lobo.xls (Allouer tous les rebuts) Nombre à charger : ALL Nombre à sauter: 0 Erreurs permises: 0 Continuation : aucune spécification Chemin utilisé: Direct Table LOBO, 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 ------------------------------ ---------- ----- ---- ---- --------------------- NAME FIRST * ; CHARACTER Informations sur Contrainte d'Intégrité/Déclencheur référentiel: Les contraintes NULL, UNIQUE et PRIMARY KEY ne sont pas affectées. Le déclencheur SYSTEM."TRIG" a été désactivé avant le chargement. SQL*Loader-951: Erreur d'appel/initialisation de charge ORA-26010: La colonne ÌIiÆÿÌça=Ò iظiÌIiÆÿÌça![]()
Partager