Einzelnen Beitrag anzeigen

schlecki

Registriert seit: 11. Apr 2005
Ort: Darmstadt
148 Beiträge
 
Delphi XE2 Enterprise
 
#9

AW: SQL-Duplexcheck in Tabelle

  Alt 30. Aug 2010, 09:42
also, ich habe es jetzt nochmal mit mysql getestet. Lege eine Tabelle mit folgendem DDL an

SQL-Code:
CREATE TABLE IF NOT EXISTS `testtable` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `Spalte1` int(11) NOT NULL,
  `Spalte2` int(11) NOT NULL,
  `Spalte3` int(11) NOT NULL,
  PRIMARY KEY (`ID`),
  UNIQUE KEY `UQ_1_2` (`Spalte1`,`Spalte2`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ;
Führe jetzt dieses SQL aus:
Code:
INSERT INTO Tabelle (Spalte1, Spalte2, Spalte3) VALUES (3, 18, 12)
ON DUPLICATE KEY UPDATE Spalte3 = Spalte3 + 12
es wurde ein neuer Datensatz eingefügt. Jetzt nochmal ausführen => der bereits angelegte Datensatz wurde aktualisiert.

Warum? Es existiert ein "Unique Key" auf den Spalten 1 & 2.

Geändert von mkinzler (30. Aug 2010 um 09:56 Uhr) Grund: Code-Tag durch SQL-Tag ersetzt
  Mit Zitat antworten Zitat