我有一个名为autosaves的表格,我的网络应用程序每4秒钟保存一次用户自动保存,以防我的网络应用程序崩溃。
自动保存
条件是:
如果customerId和designtype已存在,请使用这些值更新行(customerId designType autosaveFile)
否则,如果我提到的2个条件不存在,则使用新值创建一个新行。
我已经参与了Insert Into语句,但我似乎无法理解如何制定它以便在满足2个条件时更新它。
答案 0 :(得分:2)
您需要在customerId
和designType
列上创建唯一索引:
CREATE UNIQUE INDEX ix_cust_design ON autoSaves (customerId, designType);
然后您可以使用以下INSERT
声明:
INSERT INTO autoSaves (customerId, designType, autosaveFile)
VALUES (@id, @type, @file)
ON DUPLICATE KEY UPDATE autosaveFile = VALUES(autosaveFile)