Unknown table 'mainkey' in MULTI DELETE

本文介绍在使用MyBatis操作数据库时遇到的错误,原因在于实体类IotKey缺少字段mainKey,导致更新数据库操作失败。通过在实体类中添加缺失的字段mainKey,可以解决这一问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目中出现此类问题,有可能的原因:

项目中使用人家的数据库,取出人家数据库的某个字段,但是该字段在实体类中没有对应字段。

例如:我的IotKey实体类中有如下属性,且下面的值都是从人家数据库取出来的,还需要从数据库中取出一个mainKey,但是在实体类中没有定义mainKey,所以使用mybatis操作数据库数据(比如:更新数据库)就会报此错误。

    public class IotKey implements Serializable{

    private Integer id;
    private String teId;//终端表ID
    private String seId;//安全芯片ID
    private String companyName;//安全芯片制造商
    private String status;//密钥状态
    private String productId;//密钥状态

//各个字段getter方法

........

//各个字段setter方法

......

//toString()方法

.......

}

在实体类中加下面一个字段就好。
    private String mainKey;

for(mainkey=0;;) { if(Heater_canshutdown ==1 ) { RA_Heater.heater_status=0; RAHeater_Con(0); Heater_canshutdown = 0; } mainkey=Mainkeyboard_GetKey(); switch(mainkey) { case KEY_LEFT: In_ActiveMainMenuItem(MainMenu.select,0); if(MainMenu.select<1) //Already leftes item in mainmenu MainMenu.select=MainMenu.itemnum-1; else MainMenu.select--; In_ActiveMainMenuItem(MainMenu.select,1); //Light bar break; case KEY_RIGHT: In_ActiveMainMenuItem(MainMenu.select,0); if(MainMenu.select>MainMenu.itemnum-2) //already rightest MainMenu.select=0; else MainMenu.select++; In_ActiveMainMenuItem(MainMenu.select,1); break; case KEY_DOWN: case KEY_RETURN: ID=ManageSubMenu(); if(ID==5) { TB_Heatdown_Operate(); return; } if(ID>=0)TB_FuncProc(ID); break; case KEY_RUN: TB_VentFAN_Con(0); if(TB_stain_type==0) TB_Ziehl_Run_Operate(); else TB_Fluo_Run_Operate(); TB_VentFAN_Con(1); break; case KEY_PRIME: TB_VentFAN_Con(0); TB_Reagent_Prime(); TB_VentFAN_Con(1); break; case KEY_SETUPA: if(TB_stain_type==0) TB_Methylene_Blue_Coloration_Set(); else TB_KMnO4_Coloration_Set(); break; case KEY_SETUPB: TB_Hcl_Alcohol_Coloration_Set(); break; case KEY_SETUPC: if(TB_stain_type==0) TB_Carbolic_Acid_Coloration_Set(); else TB_Fluo_Coloration_Set(); break; case KEY_SETUP: TBManageFloatMenu(1); break; case KEY_MAINT: TBManageFloatMenu(2); break; case KEY_CALIBRATE: TBManageFloatMenu(3); break; default: break; }}主循环是这样的,如果是在中断中设置标志位的话,主循环中应该如何处理呢
最新发布
03-22
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值