Informatik

Daten einfügen, ändern und löschen

Dieses Kapitel gehört zum Leistungskurs.

Diese drei Anweisungen bilden zusammen mit SELECT die Datenmanipulationssprache. Anders als SELECT verändern sie die Datenbank – hier im Browser nur deine Kopie, in einem echten System die Daten aller.

INSERT

Nimm die ausführliche Form mit Spaltennamen. Sie ist länger, aber:

  • Man sieht beim Lesen, welcher Wert wohin gehört.
  • Sie funktioniert weiter, wenn später eine Spalte dazukommt oder die Reihenfolge sich ändert.
  • Spalten, die man weglässt, bekommen ihren Vorgabewert – bei der Kurzform muss man alle angeben.

Die Kurzform ist nur für schnelle Versuche gedacht.

UPDATE

Ein UPDATE ohne WHERE ändert jede Zeile der Tabelle.

UPDATE ticket SET preis = 0; setzt alle 155 Preise auf null. Es gibt kein Rückgängig.

Gewöhne dir an, die Bedingung zuerst als SELECT zu schreiben und nachzusehen, welche Zeilen sie trifft. Erst wenn das stimmt, machst du daraus ein UPDATE.

Übe den sicheren Ablauf an dieser Aufgabe: Alle Auftritte auf der Zeltbühne sollen 15 Minuten länger dauern.

a) Schreibe zuerst ein SELECT, das genau die Zeilen zeigt, die geändert werden sollen. Wie viele sind es?

b) Mache daraus ein UPDATE.

c) Prüfe mit einem zweiten SELECT, ob die Änderung gewirkt hat.

d) Was wäre passiert, wenn du das WHERE vergessen hättest?

Tipp: Vom SELECT zum UPDATE

Der Weg ist immer derselbe:

SELECT * FROM tabelle WHERE bedingung;
-- prüfen, dann:
UPDATE tabelle SET spalte = wert WHERE bedingung;

Die WHERE-Bedingung bleibt Zeichen für Zeichen dieselbe.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

DELETE

Für DELETE gilt dieselbe Warnung wie für UPDATE, nur schärfer: DELETE FROM bewertung; löscht alles. Und gelöschte Zeilen sind weg.

Auch hier: erst SELECT, dann DELETE mit derselben Bedingung.

Warum es hier eine zweite Datenbank gibt

Die Beispiele dieser Lektion laufen auf klangwiese-uebung.sqlite. Das ist dieselbe Datenbank – aber ohne Fremdschlüsselbedingungen.

Der Grund: Auf der richtigen Datenbank scheitern viele der Übungen an der referenziellen Integrität, und genau darum ging es in der letzten Lektion ja auch. Zum Üben von INSERT, UPDATE und DELETE wäre das nur hinderlich.

Merke dir den Unterschied trotzdem: Eine Datenbank ohne Integritätsbedingungen ist keine Erleichterung, sondern eine Datenbank, in der Widersprüche entstehen können. In der Übungsdatenbank könntest du eine Bühne löschen und Auftritte zurücklassen, die auf sie verweisen. Probier es aus – und sieh dir an, was ein Verbund danach liefert.

Aufgaben

a) Trage eine neue Bühne ein: Kleinkunstbuehne, 200 Plätze, überdacht, Nummer 5.

b) Die Band Elster heißt jetzt Elstern. Ändere den Namen.

c) Alle Fördertickets sollen 5 Euro billiger werden.

d) Lösche alle Bewertungen mit weniger als 2 Punkten. Prüfe vorher mit einem SELECT, wie viele es sind.

Lösung. Erfrage das Passwort bei deiner Lehrkraft.

Selbsttest

Daten einfügen, ändern und löschen

Teilbare URL erstellen

Abschnitte auswählen