sql >> Databáze >  >> RDS >> Oracle

Když se pokoušíte načíst clob do tabulky Oracle, načítá se příliš mnoho záznamů

Typické nastavení pro Oracle Loader s LOB by bylo:

  • Řídicí soubor s pokyny pro načítání
  • Existuje hlavní datový soubor s metadaty (autor, datum, název souboru). Každý řádek v souboru se stane řádkem v cílové tabulce.
  • Pro každou položku v hlavním souboru existuje samostatný soubor, který se načte do sloupce CLOB nebo BLOB cílové tabulky.

Ve vašem případě se zdá, že soubory XML se používají jako hlavní datový soubor i jako samostatný soubor LOB (ačkoli úplně nerozumím proč; zadáváte také XML na příkazovém řádku?).

Musíte tedy tyto tři věci správně specifikovat. Abyste se vyhnuli třem souborům, vložte hlavní datový soubor do řídicího souboru pomocí direktivy BEGINDATA (k tomu slouží hvězdička za INFILE):

LOAD DATA
INFILE * 
REPLACE

INTO TABLE LEAD_REPORTING_CLOB
FIELDS TERMINATED BY ',' TRAILING NULLCOLS
(
    FILENAME,
    SHARED_XML  LOBFILE(FILENAME) TERMINATED BY EOF
)

BEGINDATA
/export/RFD/Lead_Reports/LEADRPT.xml



  1. Jak zálohovat databázi SQL Server pomocí T-SQL

  2. Podrobný pohled na indexování databáze

  3. Chyba PID při startu mysql.server?

  4. Jak provedu vložení a vrácení vložené identity pomocí Dapper?