sql >> Databasteknik >  >> RDS >> Oracle

Oracle External Table Exempel

En vanlig användning av en extern tabell är valet av data från en OS CSV-fil (platt) via SQL *Plus. När du använder en extern tabell i detta läge måste du ange vilken typ av data i filen och hur data är organiserade. Du kan välja från en extern tabell men har inte rätt att ändra innehållet (inga infogningar, uppdateringar eller borttagningar).

Oracles externa tabellfunktion gör att du kan utföra två distinkta operationer:

  • Välj tydligt information från OS-filer med kommaseparerade värden (CSV) via SQL, vilket gör att du kan utföra uppgifter som att ladda dessa filer till databasen.
  • Skapa plattformsoberoende dumpfiler som kan användas för att överföra data. Du kan också skapa dessa filer som komprimerade och kryptera dem för effektiv och säker datatransport

I det här exemplet heter den platta filen ex.csv och finns i D:Extbl-katalogen. Den innehåller följande data:5|2|0|0|12/04/2012|Halv6|1|0|1|09/06/2013|Kvartal7|4|0|1|08/10/2013|Full8| 1|1|0|06/15/2013|Kvarter Skapa först ett katalogobjekt som pekar på platsen för den platta filen på disk:SQL> skapa katalog exa_dir som 'D:Extbl';Skapa sedan ett skript som skapar den externa tabellen som kommer att referera till den platta filen:skapa tabell exadata_et(exa_id NUMBER, machine_count NUMBER,hide_flag NUMBER,oracle NUMBER,ship_date DATE,rack_type VARCHAR2(32))organization external (typ oracle_loaderdefault directory exa_diraccess parametrar(poster avgränsade av 'newlinefields') saknade fältvärden är null(exa_id,machine_count,hide_flag,oracle,ship_date char date_format date mask "mm/dd/yyyy",rack_type))location ('ex.csv'))reject limit unlimited;En extern tabell med namnet EXADATA_ET skapas när du kör det här skriptet. Använd nu SQL*Plus för att se innehållet i den platta filen:SQL> välj * från exadata_et;EXA_ID MACHINE_COUNT HIDE_FLAG ORACLE SHIP_DATE RACK_TYPE---------- ------------ ---------- ---------- ---------- ------------------ -5 2 0 0 04-DEC-11 Halv6 1 0 1 06-SEP-12 Kvartal7 4 0 1 10-AUG-12 Full8 1 1 0 15-JUN-12 Kvartal
  1. Bli tänd av Apache Spark – Del 2

  2. ORA-00907:höger parentes saknas

  3. Hur man begränsar rader i en MySQL-resultatuppsättning

  4. Hur skriver man med BCP till en fjärransluten SQL-server?