欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決mybatis case when 報(bào)錯(cuò)的問(wèn)題

 更新時(shí)間:2021年02月03日 16:45:51   作者:guoqing2016  
這篇文章主要介紹了解決mybatis case when 報(bào)錯(cuò)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

在mybatis中使用case when進(jìn)行條件篩選判斷時(shí)遇到

Failed to process, please exclude the tableName or statementId.

這樣的報(bào)錯(cuò)信息,報(bào)錯(cuò)的信息是語(yǔ)法錯(cuò)誤

但是我在mysql的命令行中運(yùn)行sql語(yǔ)句是沒(méi)問(wèn)題的

//我的case when語(yǔ)句
WHERE dept.type = 1
AND 
(
CASE agent.dept_type
WHEN "agent" THEN dept.id=30
END
)
//當(dāng)agent的dept_type為"agent"時(shí),將添加dept.id = 30的判斷

這段sql語(yǔ)句在命令行內(nèi)運(yùn)行沒(méi)問(wèn)題但是放到mybatis上執(zhí)行就會(huì)報(bào)錯(cuò)

//修改后
WHERE dept.type = 1
AND dept.id=
(
CASE agent.dept_type
WHEN "agent" THEN 30
END
)

后來(lái)將dept.id放到外面就解決了這個(gè)問(wèn)題

20190718-補(bǔ)充記錄 :遇到另一個(gè)問(wèn)題,如果dept這個(gè)表是聯(lián)查來(lái)的有可能會(huì)沒(méi)有數(shù)據(jù),在dept無(wú)數(shù)據(jù)的時(shí)候我們就無(wú)法給dept.id賦上啥參數(shù)了,并且不可以影響原表數(shù)據(jù)的查詢(xún),我改成了下面這樣:

//修改后
WHERE dept.type = 1
AND (dept.id=
(
CASE agent.dept_type
WHEN "agent" THEN 30
ELSE 0
END
) or dept.id is null)

添加dept.id為空的判斷即可

(在mysql語(yǔ)句里可以有很多方法解決,但是在mybatis上就會(huì)報(bào)錯(cuò) -_-||)

2019-7-30-補(bǔ)充說(shuō)明:

如果是空字符串不可以使用""要改成單引號(hào)''

CASE WHEN *** THEN ***
ELSE "" =>這樣也會(huì)報(bào)錯(cuò),需要改成=> ELSE''

補(bǔ)充:Mybatis case when test 注意事項(xiàng)

<choose>
      <when test="groupBy!=null and groupBy==1">
        p_id areaId,
      </when>
      <when test="groupBy!=null and groupBy==2">
        c_id areaId,
      </when>
      <when test="groupBy!=null and groupBy==3">
        r_id areaId,
      </when>
    </choose>

test 中 用 == 不能用 = ,否則報(bào)錯(cuò)。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • JAVA線(xiàn)上常見(jiàn)問(wèn)題排查手段匯總

    JAVA線(xiàn)上常見(jiàn)問(wèn)題排查手段匯總

    這篇文章主要介紹了JAVA線(xiàn)上常見(jiàn)問(wèn)題排查手段匯總,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java在并發(fā)環(huán)境中SimpleDateFormat多種解決方案

    Java在并發(fā)環(huán)境中SimpleDateFormat多種解決方案

    這篇文章主要介紹了Java在并發(fā)環(huán)境中SimpleDateFormat多種解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 詳解Java文件下載的幾種實(shí)現(xiàn)方式

    詳解Java文件下載的幾種實(shí)現(xiàn)方式

    這篇文章主要介紹了詳解Java文件下載的幾種實(shí)現(xiàn)方式,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-12-12
  • SpringBoot 集成 Nebula的操作過(guò)程

    SpringBoot 集成 Nebula的操作過(guò)程

    這篇文章主要介紹了SpringBoot 集成 Nebula的操作過(guò)程,通過(guò)示例代碼介紹了java 環(huán)境下如何對(duì) Nebula Graph 進(jìn)行操作,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • @Resource和@Autowired兩個(gè)注解的區(qū)別及說(shuō)明

    @Resource和@Autowired兩個(gè)注解的區(qū)別及說(shuō)明

    這篇文章主要介紹了@Resource和@Autowired兩個(gè)注解的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • java網(wǎng)上圖書(shū)商城(6)訂單模塊1

    java網(wǎng)上圖書(shū)商城(6)訂單模塊1

    這篇文章主要為大家詳細(xì)介紹了java網(wǎng)上圖書(shū)商城,訂單模塊,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • 詳解SpringBoot如何正確解析日期格式

    詳解SpringBoot如何正確解析日期格式

    這篇文章主要介紹了SpringBoot如何正確解析日期格式,文中給出了兩種解決方案,通過(guò)代碼示例講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-03-03
  • Linux服務(wù)器Java進(jìn)程消失問(wèn)題解決

    Linux服務(wù)器Java進(jìn)程消失問(wèn)題解決

    這篇文章主要介紹了Linux服務(wù)器Java進(jìn)程消失問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 用Java制作用戶(hù)登錄界面超詳細(xì)圖文教程

    用Java制作用戶(hù)登錄界面超詳細(xì)圖文教程

    很多人學(xué)習(xí)Java的第一個(gè)任務(wù)是使用Java設(shè)計(jì)客戶(hù)端登錄界面中,希望我的學(xué)習(xí)方法與總結(jié)能幫助到需要的朋友,這篇文章主要給大家介紹了關(guān)于用Java制作用戶(hù)登錄界面的相關(guān)資料,需要的朋友可以參考下
    2024-06-06
  • Java實(shí)現(xiàn)十秒向MySQL插入百萬(wàn)條數(shù)據(jù)

    Java實(shí)現(xiàn)十秒向MySQL插入百萬(wàn)條數(shù)據(jù)

    這篇文章主要為大家詳細(xì)介紹了Java如何實(shí)現(xiàn)十秒向MySQL插入百萬(wàn)條數(shù)據(jù),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定借鑒價(jià)值,需要的可以參考一下
    2022-11-11

最新評(píng)論