sql insert
Facetious
- php
hi leute!
Frage:
ich habe eine db mit vielen feldern (access via odbc)
in diese möchte ich daten einfügen
ist es jetzt möglich das sql statement irgendwie so hinzubiegen, dass ich nicht alle felder in die ich etwas hineinschreiben will anzugeben?
zB:
INSERT INTO user (*) VALUES ('bla','bla');
?
mfg Facetious
Hallo,
INSERT INTO user (*) VALUES ('bla','bla');
Ja, indem du das (*) weglässt. Allerdings würde ich dir davon abraten. Überleg mal, was passieren würde, wenn du ex post mittendrin noch mal eine Spalte einfügst...
Gruß
Lachgas
Ja, indem du das (*) weglässt. Allerdings würde ich dir davon abraten. Überleg mal, was passieren würde, wenn du ex post mittendrin noch mal eine Spalte einfügst...
kA
was wird passieren
habs sql nicht wirklich drauf
Hallo,
was wird passieren
Naja, wenn die Tabelle vorher diese Spalten hatte:
id - name - text
und du fügst die Werte per INSERT INTO tabelle VALUES ('1', 'N2O', 'Hallo!'); ein, und plötzlich änderst du die Tabelle folgendermaßen:
id - name - mail - text
dann steht "Hallo!" in der mail-Spalte. Das ist ja wohl nicht erwünscht. Wenn du allerdings INSERT INTO (id, name, text) VALUES ('1', 'N2O', 'Hallo!'); benutzt hättest, gäbe es das Problem nicht.
Gruß
Lachgas
ok check
aber ich meine, wenn ich eine neue Spalte einfüge, dann muss der User auch einen Wert dafür angeben, sonst wäre es ja unlogisch
mfg
Hallo,
aber ich meine, wenn ich eine neue Spalte einfüge, dann muss der User auch einen Wert dafür angeben, sonst wäre es ja unlogisch
Das stimmt. Aber wenn sich die Tabelle zum Beispiel oft aktualisiert (z.B. Warenkorb) oder du sehr viele SQL-Befehle in einem Skript benutzt, dann vergisst man ganz schnell, das zu ändern. Und es kann sehr böse Auswirkungen haben!
Gruß
Lachgas
Hallo,
aber ich meine, wenn ich eine neue Spalte einfüge, dann muss der User auch einen Wert dafür angeben, sonst wäre es ja unlogisch
Das stimmt. Aber wenn sich die Tabelle zum Beispiel oft aktualisiert (z.B. Warenkorb) oder du sehr viele SQL-Befehle in einem Skript benutzt, dann vergisst man ganz schnell, das zu ändern. Und es kann sehr böse Auswirkungen haben!
Gruß
Lachgas
gut, aber da sich diese DB nicht verändern wird, passt es
thx für die rasche Antwort