Unterschied Zwischen Insert und Append-Anweisung im SQL-Loader?
Kann einer mir sagen, den Unterschied Zwischen Insert und Append-Anweisung im SQL-Loader?betrachten Sie das folgende Beispiel :
Hier ist mein control-Datei
load_1.ctl
load data
infile 'load_1.dat' "str '\r\n'"
insert*/+append/* into table sql_loader_1
(
load_time sysdate,
field_2 position( 1:10),
field_1 position(11:20)
)
Hier ist meine Daten-Datei
load_1.dat
0123456789abcdefghij
**********##########
foo bar
here comes a very long line
and the next is
short
InformationsquelleAutor Rajesh Kumar G | 2011-01-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Dokumentation ist ziemlich klar; verwenden
INSERT
wenn Sie in eine leere Tabelle laden, undAPPEND
beim hinzufügen von Zeilen zu einer Tabelle, die (möglicherweise) Daten enthält, das Sie behalten möchten).APPEND
wird immer noch funktionieren, wenn die Tabelle leer ist.INSERT
könnte sicherer sein, wenn Sie erwarten, dass die Tabelle leer sein, es wird Fehler, wenn das nicht wahr ist, Vermeidung unerwarteter Ergebnisse (insbesondere, wenn Sie nicht bemerken und nicht andere Fehler wie unique index-Einschränkung, Verletzungen) und/oder eine post-load-data-cleanse.wird nur hinzufügen von Zeilen, wenn die Tabelle leer ist; wenn die Tabelle nicht leer ist, dann wird es Fehler.
APPEND
werden Zeilen hinzufügen, ob die Tabelle leer ist oder nicht.InformationsquelleAutor Alex Poole
Der Unterschied sind zwei Punkte klar:
in append sowohl die Daten und die Tabelle sollte Spalten bedeutet, dass das einfügen von Daten in der Zeile Ebene, sondern in der Spalte Ebene
und es ist auch wahr, dass Sie nicht verwenden können, legen Sie, wenn Ihre Tabelle über Daten verfügen, wenn es leer ist, dann können nur Sie verwenden einfügen.
hoffe es hilft
InformationsquelleAutor hi4ppl