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 09/08/2006, 16h20   #1
Membre du Club
 
Inscription : février 2005
Messages : 168
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 168
Points : 42
Points : 42
Par défaut [ORACLE 8.1.7] Insertion d'un number dans une Colonne DATE avec SQL LOADER

Bonjour,

Dans mon fichier de controle de SQL LOADER, j'essaie avec tant mal que bien, de trouver le bon format pour inserer un nombre dans une colonne date.

J'ai essayé différents format mais rien ne va. Le dernier en date :


LCHHAPTPE "TO_DATE(:LCHHAPTPE,'HH24:MI')" POSITION(16:20),

Merci de votre réponse.
ApprentiOracle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2006, 16h44   #2
Membre actif
 
Inscription : novembre 2004
Messages : 311
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 311
Points : 157
Points : 157
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
SQL> CREATE TABLE t1(col1 DATE);
 
TABLE créée.
 
SQL> INSERT INTO t1 
  2  SELECT to_date(1640, 'HH24MI') FROM dual;
 
1 ligne créée.
 
SQL> SELECT col1 FROM t1;
 
COL1
--------
01/08/06
 
SQL> SELECT to_char(col1, 'DD-MON-YY HH24:MI:SS') FROM t1;
 
TO_CHAR(COL1,'DD-M
------------------
01-AOU-06 16:40:00
davy.g est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2006, 16h54   #3
Membre du Club
 
Inscription : février 2005
Messages : 168
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 168
Points : 42
Points : 42
Bonjour davy.g,

Ok pour cela pas de probleme.

Je viens de resoudre provisoirement mon souci en mettant dans mon fichier de controle de SQLLOADER: LCHHAPTPE POSITION(16:20) "TO_DATE(:LCHHAPTPE,'HH24:MI')".

par contre, dans le fichier .log, j'ai l'erreur suivante :

Record 2: Rejected - Error on table CHQLCHTPE, column LCHHAPTPE.
ORA-01861: literal does not match format string

Record 3: Rejected - Error on table CHQLCHTPE, column LCHHAPTPE.
ORA-01861: literal does not match format string
ApprentiOracle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2006, 16h56   #4
Membre actif
 
Inscription : novembre 2004
Messages : 311
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 311
Points : 157
Points : 157
Quelle est le type de ta colonne dans ta table et un exemple de valeur de ton fichier ?
davy.g est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2006, 16h59   #5
Membre du Club
 
Inscription : février 2005
Messages : 168
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 168
Points : 42
Points : 42
Citation:
Envoyé par davy.g
Quelle est le type de ta colonne dans ta table ?
date
ApprentiOracle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/08/2006, 00h39   #6
Nouveau Membre du Club
 
Inscription : février 2006
Messages : 28
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 28
Points : 32
Points : 32
bonjour,
mon cher tu n'as pas le choix entre les format il faut utilisé le format correspondant aux données dans ton fichier.
exemple: une ligne contient "A1020060809223499999999"
la date commence de la position 4,la solution dans ce cas est :
Code :
1
2
 
CHAMP_DATE      POSITION( 4:15 ) "TO_DATE(:CHAMP_DATE,'YYYYMMDDHH24MI')"
par contre si la ligne était "A102006/08/0922:3499999999" (des / comme séparateur de date et : comme séparateur des heures)
la solution sera :
Code :
1
2
 
CHAMP_DATE      POSITION( 4:18 ) "TO_DATE(:CHAMP_DATE,'YYYY/MM/DDHH24:MI')"
j espère que j'ai pas tors ,bon courage.
hadlak est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/08/2006, 15h45   #7
Membre du Club
 
Inscription : février 2005
Messages : 168
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 168
Points : 42
Points : 42
Merci à Hadlak et davy.g.

La derniere reponse est la bonne effectivement.

Il faut mettre la condition après la position.
ApprentiOracle est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h33.


 
 
 
 
Partenaires

Hébergement Web