2015-10-27 2 views
0

Je veux importer le fichier csv. mon script est:sqlldr: ORA-00911: caractère invalide

@echo off 
set numid=2015092510524361378197540100 
sqlldr [email protected]/PSW data=csv\2015092510524361378197540100.csv control=ctl\control.ctl log=log\2015092510524361378197540100.log bad=bad\id.bad 
pause 

ma table est:

CREATE TABLE SV (NO1 VARCHAR2(255),NAMA VARCHAR2(255),ALAMAT VARCHAR2(255),id VARCHAR2(20),JAB VARCHAR2(50),numid VARCHAR(55)); 

mon control.ctl est:

OPTIONS (SKIP=43, errors=12000) LOAD DATA APPEND INTO TABLE sv when NAMA <> '' FIELDS TERMINATED BY ',' optionally enclosed by '"' TRAILING NULLCOLS (no filler,no1 "TRIM (:no1)",nama "TRIM (:nama)", alamat "TRIM (:alamat)",id "TRIM (:id)",jab "TRIM (:jab)",numid "%numid%") 

erreur est:

Record 10: Rejected - Error on table sV, column numid. 
ORA-00911: invalid character 

s'il vous plaît laissez-moi savoir quel on a tort. Merci à tous

+0

Vous avez quitté le fichier csv lui-même. Spécifiez spécifiquement 10. La colonne numid. En fait, je ne sais pas ce que les signes de pourcentage sont autour de numid dans le fichier de contrôle, mais le numid à l'intérieur d'eux devrait avoir un deux-points en face. –

Répondre

1

Depuis numide est un VARCHAR2 (55), changer la table datatype être VARCHAR2 et le fichier de contrôle à lire:

numid "TRIM(:numid)"