UPDATE wenn Eintrag vorhanden, INSERT wenn noch nicht!
-
- Mitglied
- Beiträge: 140
- Registriert: 10.05.2005 02:35
- Wohnort: Filderstadt
UPDATE wenn Eintrag vorhanden, INSERT wenn noch nicht!
Ich suche eine Möglichkeit in einem PHP-Projekt in einer mySQL-Datenbank Datensätze anlegen zu lassen, wenn diese noch nicht vorhanden sind, anderenfalls zu UPDATEN. Die Datensätze sind mit Jahr und Monat eindeutig beschreibbar, dazu kommt noch ein Inhalt. Da das Script Interaktiv ist und für einige Jahre gelten soll, ist es nicht praktikabel die Datensätze gleich bei der Installation anzulegen, sondern immer nur, wenn wirklich Daten eingesetzt werden.
Dafür gibt es bei MySQL die Syntax REPLACE INTO (http://dev.mysql.com/doc/refman/4.1/en/replace.html) oder INSERT ... ON DUPLICATE KEY UPDATE (http://dev.mysql.com/doc/refman/4.1/en/insert.html).
KB:knigge
-
- Mitglied
- Beiträge: 140
- Registriert: 10.05.2005 02:35
- Wohnort: Filderstadt
wow, danke für die schnelle Hilfe, ich werde das gleich mal antesten
Also ich hab da grad noch ein kleines Problemchen entdeckt, ich hab die Daten ja über Jahr und Monat beschrieben und keinen PRIMARY KEY in der Tabelle, also funktionieren die Befehle nicht direkt.
Ich hab noch nie mit mehrfachen PRIMARY KEYS für eine Tabelle gearbeitet, aber gelesen, dass es geht, könnte mir da vllt jemand helfen?
das ist der bisherige Code zum erstellen der Tabelle, könnte man den auf 2 UNIQUE IDs umschreiben
Also ich hab da grad noch ein kleines Problemchen entdeckt, ich hab die Daten ja über Jahr und Monat beschrieben und keinen PRIMARY KEY in der Tabelle, also funktionieren die Befehle nicht direkt.
Ich hab noch nie mit mehrfachen PRIMARY KEYS für eine Tabelle gearbeitet, aber gelesen, dass es geht, könnte mir da vllt jemand helfen?
Code: Alles auswählen
$create_sql = "CREATE TABLE " . TBL_BELEG_PLAN . " (year INT(4) NOT NULL, month INT(2) NOT NULL, checkboxes INT NOT NULL)";