我使用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;
Run Code Online (Sandbox Code Playgroud)
我搜索并尝试解决这个问题,因为这个功能对非默认表不起作用.我不知道默认和非默认.请帮帮我
Tho*_*ler 17
您需要使用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;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7461 次 |
| 最近记录: |