PtokaX API ile LuaSQL kullanarak aşağıdaki tabloya ekliyorum.
CREATE TABLE `requests` (
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`ctg` VARCHAR(15) NOT NULL,
`msg` VARCHAR(250) NOT NULL,
`nick` VARCHAR(32) NOT NULL,
`filled` ENUM('Y','N') NOT NULL DEFAULT 'N',
`dated` DATETIME NOT NULL,
`filldate` DATETIME NULL DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE INDEX `nick_msg` (`nick`, `msg`),
UNIQUE INDEX `ctg_msg` (`ctg`, `msg`)
)
COMMENT='Requests from users in any of the categories.'
COLLATE='utf8_general_ci'
ENGINE=MyISAM;
Şimdi, benim sorunum, bir kullanıcı (ile temsil edilen nick
) aynı isteği tekrar eklemeye çalıştığında, UNIQUE
dizin denetlenir ve komut dosyası yanlış döndürür. Bu benim komut dosyası başarısız olur ve ben komut dosyasını yeniden başlatmak zorunda.
INSERT ... ON DUPLICATE KEY
Hiçbir şey yapmaması veya en azından durumunda bir hata döndürmemesi için komutta yapabileceğim bir şey var mıDUPLICATE KEY
?
Aksi takdirde, alanımı dated
yeni DATETIME
değerle güncellemek için gitmem gerekir .