Verwenden Sie die INSERT-Anweisung, um der Datenbank Zeilen hinzuzufügen. Da die Importdaten für Ihre Zieltabelle in die INSERT-Anweisung aufgenommen werden, wird dies als interaktive Eingabe angesehen. Sie können die INSERT-Anweisung auch mit Ferndatenzugriff verwenden, um Daten aus einer anderen Datenbank und nicht aus einer Datei zu importieren.
Verwenden Sie die INSERT-Anweisung unter folgenden Umständen für den Datenimport:
Sie wollen geringe Datenmengen in eine einzige Tabelle importieren.
Sie sind im Hinblick auf die Dateiformate flexibel.
Sie wollen entfernte Daten aus einer externen Datenbank und nicht aus einer Datei importieren.
Die INSERT-Anweisung bietet eine ON EXISTING-Klausel, um eine Aktion anzugeben, die ausgeführt wird, wenn eine einzufügende Zeile in der Zieltabelle gefunden wird. Wenn es jedoch voraussichtlich viele Zeilen gibt, die der ON EXISTING-Bedingung entsprechen, kann es sinnvoll sein, stattdessen die MERGE-Anweisung zu verwenden. Die MERGE-Anweisung bietet mehr Kontrolle über die Aktionen, die Sie bei übereinstimmenden Zeilen durchführen können. Sie stellt auch eine ausgefeiltere Syntax zur Verfügung um festzulegen, was eine Übereinstimmung ausmacht. Weitere Hinweise finden Sie unter MERGE-Anweisung.
Bei Sofortansichten wird ein Fehler zurückgegeben, wenn Sie versuchen, einen Massenimport von Daten in eine Basistabelle durchzuführen. Sie müssen die Daten in der Ansicht erst kürzen und können erst dann den Massenimport vornehmen.
Bei manuellen Ansichten können Sie einen Massenimport von Daten in eine Basistabelle durchführen. Allerdings werden die Daten in der Ansicht veraltet, bis die nächste Aktualisierung erfolgt.
Denken Sie daher daran, eine Kürzung in abhängigen materialisierten Ansichten vorzunehmen, bevor Sie einen Massenimport wie z.B. eine INSERT-Anweisung in einer Tabelle versuchen. Nachdem Sie die Daten geladen haben, aktualisieren Sie die Ansicht. Weitere Hinweise finden Sie unter TRUNCATE-Anweisung und REFRESH MATERIALIZED VIEW-Anweisung.
Bei Sofort-Textindizes kann das Aktualisieren eines Textindexes nach dem Massenimport wie etwa einer INSERT-Anweisung in der Basistabelle eine bestimmte Zeit in Anspruch nehmen, auch wenn die Aktualisierung automatisch erfolgt. Bei manuellen Indizes kann sogar die Aktualisierung eine Zeitlang dauern.
Denken Sie daran, abhängige Textindizes zu löschen, bevor Sie einen Massenimport wie eine INSERT-Anweisung für eine Tabelle vornehmen. Nachdem Sie die Daten geladen haben, erstellen Sie den Textindex neu. Weitere Hinweise finden Sie unter DROP TEXT INDEX-Anweisung und CREATE TEXT INDEX-Anweisung.
Wenn Sie die INSERT-Anweisung verwenden, werden Änderungen im Transaktionslog aufgezeichnet. Das bedeutet, dass Sie im Fall eines Datenträgerausfalls, der die Datenbankdatei betrifft, anhand des Transaktionslogs Informationen über die von Ihnen durchgeführten Änderungen beziehen können.
Im folgenden Beispiel werden Daten der Departments-Tabelle in der SQL Anywhere-Beispieldatenbank hinzugefügt.
Stellen Sie sicher, dass die Zieltabelle vorhanden ist.
Führen Sie eine INSERT-Anweisung aus. Zum Beispiel:
Im folgenden Beispiel wird eine neue Zeile in die Departments-Tabelle in der SQL Anywhere-Beispieldatenbank eingefügt:
INSERT INTO Departments ( DepartmentID, DepartmentName, DepartmentHeadID ) VALUES ( 700, 'Training', 501) SELECT * FROM Departments; |
Beim Einfügen werden der bestehenden Tabelle die neuen Daten hinzugefügt.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |