Michael Schröpl: Fehler gefunden!

Beitrag lesen

Hi Henk,

Fehler gefunden:

Glückwunsch.

Ich hatte für die primäre (auto_increment)-Spalte

Ich wollte, ich wüßte, wieso das so viele Leute machen (autoincrement-Spalten verwenden, meine ich).

Wie fügt man denn in eine solche Tabelle sinnvoll Datensätze ein? Ich meine damit "mit SQL".

Was dann nämlich schon mal nicht geht, ist

CREATE TABLE dummytable AS
      SELECT *
        FROM mytable
       WHERE bedingung;

UPDATE dummytable
         SET wert
       WHERE bedingung;

INSERT INTO mytable
      SELECT *
        FROM dummytable;

also das Erzeugen abgeleiteter Teilmengen. ("klonen")

Statt dessen muß ich in diesem Fall die AutoIncrement-Spalte explizit weglassen, d. h. die komplette Feldliste ohne diese eine Spalte angeben ... das finde ich äußerst lästig (und vor allem änderungsunfreundlich, falls gespeicherter Code und nicht nur im Dialog mal schnell eingetippt).

Primärschlüssel versuche ich üblicherweise aus der relationalen Zerlegung meiner Daten abzuleiten.
Wenn sich da nichts aufdrängt, dann bringt mir ein künstlicher autoincrement-Wert nur in wenigen Fällen wirklich etwas, denke ich.

Was übersehe ich dabei?

Viele Grüße
      Michael