Grundlagen der Insert, Update und Delete-Anweisungen in Oracle 12c

So fügen Sie Zeilen zu Ihrer Oracle-Datenbank 12c, verwenden Sie die INSERT-Anweisung. Eine INSERT-Anweisung wirkt auf eine Tabelle zu einem Zeitpunkt. Die INSERT-Anweisung hat drei Klauseln, von denen eines optional:

  • INSERT-Klausel

  • Column-Klausel (optional)

  • VALUES-Klausel

Hier ist, wie Sie eine neue Zeile in den Arbeits Tabelle einfügen würde:

  1. Für die INSERT-Klausel, Typ

    und drücken Sie die Eingabetaste.

  2. Für die Spalten Klausel, Typ

    lt; (job_id, job_title)>

    und drücken Sie die Eingabetaste.

  3. Für die VALUES-Klausel, Typ

    und drücken Sie die Eingabetaste.

    Sie sehen

    SQL> INSERT INTO jobs2 (job_id, job_title) 3 VALUES ( 'TRN_MGR', 'TRAINING MANAGER') - 1 Zeile wurde erstellt.

    Nachdem Sie eine Zeile zu Ihrer Tabelle hinzufügen, werden die Ergebnisse wie folgt:

    SQL> SELECT * 2 FROM jobs3 WHERE job_id = 'TRN_MGR'-JOB_ID JOB_TITLE MIN_SALARY MAX_SALARY ---------- ---------------------- ------------- ---------- ---------- TRN_MGR TRAINING MANAGER

    Die Gehalts Spalten sind leer.

Einfache Anführungszeichen ( '@@') muss um Zeichenfelder verwendet werden. Alles, was Zeichen enthält (wie zum Beispiel a, b oder c) braucht einfache Anführungszeichen um es zu haben, wenn Sie Daten im Gespräch sind. Numerische Felder können ohne Anführungszeichen gelassen werden.

Wie man Daten mit der Anweisung UPDATE in Oracle 12c ändern

Wenn Sie Daten, die Sie ändern möchten, verwenden Sie die UPDATE-Anweisung. Die UPDATE-Anweisung wirkt auf Spalten. Hier sind die Klauseln der UDPATE Aussage:

  • UPDATE-Klausel

  • SET-Klausel

  • WHERE-Klausel

Die ersten beiden Sätze sind erforderlich. Technisch gesehen, ist die letzte Klausel optional wenn auch sehr zu empfehlen.

Wenn du # 147-vergessen # 148- die Gehaltsinformationen in unserer INSERT-Anweisung, hier ist, wie es mit einer UPDATE-Anweisung zu beheben:

  1. Art

    und drücken Sie die Eingabetaste.

  2. Art

    und drücken Sie die Eingabetaste.

  3. Art

    und drücken Sie die Eingabetaste.

    Sie sehen

    SQL> UPDATE jobs2 SET min_salary = 10000, max_salary = 200003 WHERE job_id = 'TRN_MGR'-1 Zeile wurde aktualisiert.

    Und die Ergebnisse sind

    SQL> SELECT * 2 FROM jobs3 WHERE job_id = 'TRN_MGR'-JOB_ID JOB_TITLE MIN_SALARY MAX_SALARY ---------- ---------------------- ------------- ---------- ---------- TRN_MGR TRAINING MANAGER 10000 20000

Bedenken Sie immer eine WHERE-Klausel mit einer UPDATE-Anweisung verwenden, oder Sie sonst alle Zeilen aktualisieren.

Verwenden Sie Ihre WHERE-Klausel mit Ihrem UDPATE Anweisung eine SELECT-Anweisung zu bilden. Auf diese Weise können Sie überprüfen, ob Ihre WHERE-Klausel auf die korrekten Daten handelt, bevor Sie das Update ausführen. (Dies würde auch zu einer DELETE-Anweisung anwenden.)

Wenn Sie mögen, was Sie sehen, müssen Sie die Änderungen dauerhaft zu machen. Geben Sie und drücken Sie die Eingabetaste.

Sie sehen:

SQL> Commit-Commit abgeschlossen.

Und, können Sie Ihre Änderungen nicht leicht rückgängig gemacht werden.

So entfernen Sie Daten mit der DELETE-Anweisung in Oracle 12c

Die letzte DML-Typ Aussage darüber zu sprechen, ist die DELETE-Anweisung. Die DELETE-Anweisung können Sie Zeilen aus Tabellen zu entfernen. DELETE wirkt auf eine Tabelle zu einem Zeitpunkt. Sie sollten auch sorgfältig zu prüfen, eine WHERE-Klausel mit dem DELETE-Anweisung verwendet, oder alle Ihre Zeilen entfernt werden.

Die DELETE-Anweisung hat zwei Klauseln:

  • DELETE-Klausel

  • WHERE-Klausel

Hier ist, wie die letzten Reihen zu entfernen Sie einfach hinzugefügt, um die Datenbank für die TRN_MGR job_id:

  1. Art

    und drücken Sie die Eingabetaste.

  2. Art

    und drücken Sie die Eingabetaste.

    Sie sehen

    SQL> DELETE FROM jobs2 WHERE job_id = 'TRN_MGR'-1 Zeile gelöscht.

    Und die Ergebnisse wie folgt aussehen:

    SQL> SELECT * 2 FROM jobs3 WHERE job_id = 'TRN_MGR'-keine Zeilen ausgewählt

Es gibt nicht mehr alle Zeilen in der Tabelle für die job_id TRN_MGR. Zusätzlich wurden alle Spalten entfernt. Zum Entfernen von nur einer der Werte, verwenden Sie eine UPDATE-Anweisung und legen Sie die Spalte zu leeren (null). DELETE wirkt immer auf alle es entfernt Reihen columns-.

Hoppla! Sie bedeutete nicht die TRN_MGR Zeile zu löschen! Zum Glück, Sie haben nicht unsere Änderung COMMIT noch. Sie können diese Änderung mit einer ROLLBACK-Anweisung rückgängig machen:

SQL> ROLLBACK-Transfer abbrechen complete.SQL> SELECT * 2 FROM jobs3 WHERE job_id = 'TRN_MGR'-JOB_ID JOB_TITLE MIN_SALARY MAX_SALARY ---------- --------------- -------------------- ---------- ---------- TRN_MGR TRAINING MANAGER 10000 20000

Solange Sie in Ihrer Sitzung nicht erteilt haben ein COMMIT, können Sie alle Änderungen an der letzten COMMIT in Ihrer Sitzung zurückzunehmen. Auch, bis Sie Ihre Daten verpflichten, sonst niemand in der Datenbank kann es sehen.

Verlassen Daten un-committed für längere Zeit kann dazu führen, Sperrung Probleme in der Datenbank. Daten, die geändert wurde und nicht verpflichtet hält eine Sperre auf die Zeile (n) in Frage. Sie sollten Ihre Änderungen so schnell wie möglich zu begehen.

Menü