Tôi đang chèn vào bảng sau bằng LuaSQL với PtokaX API.
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;
Bây giờ, vấn đề của tôi là, khi một người dùng (được đại diện bởi nick
) cố gắng chèn lại cùng một yêu cầu, UNIQUE
chỉ mục được kiểm tra và tập lệnh trả về sai. Điều này khiến tập lệnh của tôi bị lỗi và tôi phải khởi động lại tập lệnh.
Có điều gì tôi có thể làm trong
INSERT ... ON DUPLICATE KEY
lệnh để nó không làm gì hoặc ít nhất là KHÔNG trả về lỗi trong trường hợpDUPLICATE KEY
không?
Nếu không, tôi sẽ phải cập nhật dated
trường của mình với DATETIME
giá trị mới .