SQL * Loader este un instrument puternic pentru importarea diverselor date dintr-un fișier într-o bază de date.
Dacă aveți nevoie să descărcați ceva din fișier în baza de date, atunci acest instrument este doar ceea ce vă va ajuta.
SQL * Caracteristici Loader
- Descărcați datele din diferite fișiere într-o singură sesiune
- Încărcarea datelor în diferite tabele într-o singură sesiune
- Specificarea codificării fișierului de date
- Utilizarea funcțiilor SQL înainte de descărcare
- Generarea de chei unice pentru coloane
- Limitarea datelor introduse în funcție de condiție
- Încărcarea datelor binare
- Scrieți date eronate la un fișier de eroare
Intrarea necesită două fișiere:
2) Fișier de control (.CTL)
Un fișier care descrie structura datelor (fișier de control al încărcătorului) conține o descriere a tipurilor de date ale coloanelor, metoda de împărțire a coloanelor, modul de prelucrare a datelor etc. În acest fișier sunt setate setările de procesare pentru fișierul de date. Unele setări pot fi ignorate în linia de comandă cu Oracle SQL * Loader rula.
1) Date din tabelul bazei de date
2) Fișier log
3) Un fișier cu date incorecte (fișiere greșite) - date care nu au fost introduse din cauza limitărilor bazei de date
4) Fișier cu date aruncate (Fișiere aruncate) - date care nu au trecut condiții suplimentare
Fișier de control SQL * Loader (CTL)
Exemplu de fișier "myexample.ctl":
1 - Opțiuni vă permite să specificați un număr de parametri care nu sunt în linia de comandă, ci direct în fișier.
2 - DATA LOAD este necesară la începutul fișierului de control
3 - CHARACTERSET dacă doriți să specificați codificarea.
4 - INFILE definește fișierul cu datele sursă.
5 - BADFILE definește un fișier cu date incorecte.
6 - DISCARDFILE definește fișierul cu date ignorate.
7 - metoda de încărcare a datelor într-un tabel
Este folosit în mod implicit. Tabelul nu trebuie să conțină date înainte de descărcare. Dacă în tabel există rânduri de date, încărcarea SQL * Loader nu va fi executată
Vă permite să adăugați rânduri în tabel astfel încât acestea să nu afecteze liniile de date existente.
Toate rândurile din tabel sunt șterse și apoi sunt descărcate altele noi. Când ștergeți rânduri, se declanșează declanșatoarele care există pe masă.
Toate rândurile din tabel sunt șterse. Declanșatoarele nu funcționează.
8 - INTO TABLE + numele tabelului pentru introducerea datelor
9 - CÂMPURI DEFINITE prin definirea separatorului de date din fișierul de date
10 - INCLINAT OPȚIONAL DE "" "specifică faptul că datele pot conține un caracter cadru
11 - TRAILING NULLCOLS dacă câmpul nu are date în fișierul de date, scrie NULL
12-15 - descrierea coloanelor din tabel, cu funcțiile SQL aplicate
Rularea datelor de import SQL * Loader
Pentru a începe încărcarea datelor prin SQL * Loader
Rețineți că înainte de a începe scriptul de încărcare, tabela ar trebui să fie deja creată.
SQL * Opțiuni de linie de comandă Loader
Lista parametrilor poate fi obținută prin rularea SQL * Loader fără specificarea parametrilor:
Datele care trebuie descărcate direct în fișierul de control
Un exemplu de date conținute într-un fișier de control. Începerea datelor este definită de instrucțiunea BEGINDATA
Rulați scriptul test.sh și examinați rezultatul:
În plus, a fost creat un fișier jurnal XX_MYEXAMPLE.log
Datele cu diferite delimitatoare în formatul de date + date
Fișierul XX_MYEXAMPLE2.ctl
Operator FILLER - vă permite să săriți peste coloană datele și să nu încărcați în tabel.
Rulați importul și urmăriți rezultatul:
Extras. informații puteți găsi aici: