[gelöst]Datenbank-Fehlermeldung

Hallo, ich wollte in der DB in der Tabelle s_core_engine_values einen neuen Datensatz anlegen, dann kommt es je nach eingetragener ID zu folgendender Fehlermeldung: [quote]Fehler SQL-Befehl: INSERT INTO dbxxxxxx_x.s_core_engine_values ( id , domelement , domvalue , description , position ) VALUES ( ‘xyz’, …usw ) MySQL meldet: #1062 - Duplicate entry ‘75’ for key ‘PRIMARY’ [/quote] Welche Konsequenzen hat das? Der Datensatz wird ja trotzdem angelegt… Grüße rattatui

Sicher, dass der Datensatz angelegt wird? Das dürfte nicht sein. Man kann aber das erste Feld mit NULL einfügen (statt “xyz”), dann wird MySQl an dieser Stelle automatisch die “id” erhöhen, da dieses Feld ein autoincrement Feld ist.

1 „Gefällt mir“

Hallo waldicom, der Datensatz wird tatsächlich angelegt und benutzbar/funktionsfähig ist der Wert unter domvalue auch. Danke für den Tipp - aber bei Datenbanken kenne ich mich nicht so aus. Wo trage ich NULL denn ein? In der Tabellenansicht von s_core_engine_values steht in der Spalte „Null“ immer „Nein“ und ist nicht editierbar und wenn man mit Einfügen einen neuen Datensatz anlegen will, ist die Spalte „Null“ ebenfalls nicht editierbar… Grüße rattatui

Der Insert-Befehl könnte so aussehen: INSERT INTO `dbxxxxxx_x`.`s_core_engine_values` ( `id` , `domelement` , `domvalue` , `description` , `position` ) VALUES ( NULL, ...usw ) Das geht aber nur deswegen, weil das erste Feld in der Tabelle (das Feld id) ein sog. auto_increment Feld ist. Wichtig dabei, dass der Wert nicht ‘NULL’ sondern NULL (also ohne Apostrophe) ist.

Ah Danke - das führe ich ja im phpMyAdmin in „SQL“ aus - Kann man sich die VALUES auch nochmal ausgeben lassen, damit ich beim Einsetzen nichts vergesse? Grüße rattatui

…Nur um das Thema abzuschließen: Das war wohl ein Anfänger-Fehler von mir. Hätte ich das phpMyAdmin-Manual gelesen, wäre das wohl auch nicht passiert (RTFM!) :quite: Nachdem ich in phpMyAdmin einen neuen Eintrag gemacht hatte und mit OK bestätigt habe, kommt man zu einem einem weiteren Bildschirm, wo man nochmals bestätigen kann. Ich dachte dadurch gelange ich zur Tabellenansicht zurück… :oops: Dann wird der Befehl aber nochmals ausgeführt, dass ist dann die Fehlermeldung für einen doppelten Eintrag - manchmal ist der Fehler vor dem Bildschirm zu finden :sunglasses: Trotzdem danke für den Tip, kann man sicher mal gebrauchen. Grüße rattaui