Lieber Mitleser,
Auch wenn mir persönlich der Fall noch nicht untergekommen ist: man kann bei INSERT INTO VALUES auch Spaltennamen angeben…
um gegen mögliche Änderungen am Tabellenlayout abzusichern, verwende ich grundsätzlich eine Liste der Spaltennamen, in die ich schreiben möchte:
INSERT INTO `my_table`
(`spalte_a`, `spalte_x`, `spalte_z`, `noch_irgend_ne_spalte`)
VALUES
-- 1. zu schreibender datensatz --
("wert_a", "wert_x", "wert_z", "noch_irgend_nen_wert"),
-- 2. zu schreibender datensatz --
("wert_a", "wert_x", "wert_z", "noch_irgend_nen_wert"),
-- 3. zu schreibender datensatz --
("wert_a", "wert_x", "wert_z", "noch_irgend_nen_wert")
;
Damit kann die Reihenfolge der Spalten in der Tabelle sein, wie sie will; mit der Query kommen die Daten immer in die richtigen Spalten. Und sollten später einmal weitere Spalten hinzu kommen, dann wirft diese Query deswegen keine Fehler. Die nicht aufgeführten neuen Spalten werden dann mit Default-Werten befüllt.
Ich habe noch immer nicht verstanden, was Linuchs eigentlich erreichen möchte.
Liebe Grüße
Felix Riesterer