Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak zamienić wartości sqlldr

Pomogłoby, gdybyś dostarczył także mytab opis. Ponieważ kolumna "Data" (której nazwa jest nieprawidłowa; jest zarezerwowana dla nazwy typu danych. Zmieniłem jej nazwę na "Data") powinna być z date typ danych, podczas gdy wydaje się, że używasz varchar2 . W obu przypadkach użyjesz odpowiedniej funkcji, zawartej w podwójnych cudzysłowach. Użyłem replace robi to, o co prosiłeś.

Oto przykład:

Plik kontrolny (Twój jest nieprawidłowy, ponieważ nie jest zgodny z formatem danych; naprawiłem go):

load data
infile *
truncate into table Mytab
fields
trailing nullcols
(Name    position(1:4),
 Acc     position(6:9),
 Status  position(11:14),
 Amt     position(16:19),
 type    position(21:24),
 Datum   position(26:35) "replace(:datum, '/', '-')"
)

begindata
bbbb 1000 Open 1000 Dep  12/03/2010
dddd 1001 Open 2000 Loan 13/01/2019
eeee 1003 Dor  3000 Dep  11/04/1965

Wczytywanie sesji i wyniku:

SQL> $sqlldr scott/[email protected] control=test34.ctl log=test34.log

SQL*Loader: Release 11.2.0.1.0 - Production on Sri O×u 24 07:54:46 2021

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

Commit point reached - logical record count 3

SQL> select * from mytab;

NAME       ACC        STATUS     AMT        TYPE       DATUM
---------- ---------- ---------- ---------- ---------- ----------
bbbb       1000       Open       1000       Dep        12-03-2010
dddd       1001       Open       2000       Loan       13-01-2019
eeee       1003       Dor        3000       Dep        11-04-1965

SQL>



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Podziel ciąg według pozycji ogranicznika za pomocą Oracle SQL

  2. Znajdź podtyp liczbowy (smallint, int itp.) w Oracle

  3. Zapytanie do sprawdzenia, czy elementy istnieją w grupie partycji

  4. SUBST i INSTR SQL Oracle

  5. Jak mogę sprawdzić, czy mój system Oracle obsługuje znaki Unicode lub znaki wielobajtowe?