gpt4 book ai didi

sql - 关于H2中的重复 key 更新功能

转载 作者:行者123 更新时间:2023-12-01 22:26:13 24 4
gpt4 key购买 nike

我使用H2(嵌入式)开发了java桌面应用程序。我只有关于数据库的基本知识,所以我只是安装了 H2 并创建了一个名为 RecordAutomation 的模式,然后将表添加到该模式中。现在我尝试对特定表使用 ON DUPLICATE KEY UPDATE 功能,该表无法正常工作,会出现 sql 语法错误,我检查我的查询,发现它是正确的,如下所示

INSERT INTO RECORDAUTOMATION.MREPORT 
(PRODUCTID ,DESCRIPTION ,QUANTITY ,SUBTOTAL ,PROFIT )
VALUES (22,olper,5,100,260)
ON DUPLICATE KEY UPDATE SET QUANTITY = QUANTITY+5;

我搜索并尝试解决这个问题,就像这个功能不适用于非默认表一样。我不知道默认和非默认。请帮助我

最佳答案

您需要使用MySQL模式。为此,请将 ;mode=MySQL 附加到数据库 URL。 (此功能尚未正确记录)。

表需要有一个主键或至少一个唯一索引。完整示例:

drop table MREPORT;

set mode MySQL;

create table MREPORT(PRODUCTID int primary key,
DESCRIPTION varchar, QUANTITY int, SUBTOTAL int, PROFIT int);

INSERT INTO MREPORT
(PRODUCTID ,DESCRIPTION ,QUANTITY ,SUBTOTAL ,PROFIT )
VALUES (22,'olper',5,100,260)
ON DUPLICATE KEY UPDATE QUANTITY = QUANTITY+5;

关于sql - 关于H2中的重复 key 更新功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29809219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com