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

Mybatis操作數(shù)據(jù)時(shí)出現(xiàn):java.sql.SQLSyntaxErrorException:?Unknown?column?'XXX'?in?'field?list'的問(wèn)題解決

 更新時(shí)間:2023年04月19日 10:04:23   作者:Comet_Fei  
這篇文章主要介紹了Mybatis操作數(shù)據(jù)時(shí)出現(xiàn):java.sql.SQLSyntaxErrorException:?Unknown?column?'XXX'?in?'field?list',需要的朋友可以參考下

這個(gè)錯(cuò)誤比較重要,而且很常見(jiàn),故單獨(dú)進(jìn)行說(shuō)明:

Mybatis出現(xiàn):Unknown column 'xxx' in 'field list'

先來(lái)看一下程序的內(nèi)部:

dao.addUser("ll111", "ll11");// 添加用戶(hù)l main函數(shù)測(cè)試
//添加用戶(hù) 成功1 失敗0
    public int addUser(String userPhoneNumber, String userPassword) throws IOException {
        //用戶(hù)的 手機(jī)號(hào),姓名(默認(rèn)手機(jī)號(hào)),密碼
        User user = new User(userPhoneNumber, userPhoneNumber, userPassword);
        int result = mapper.addUser(user);

        System.out.println(result);

        sqlSession.commit();
        return result;
    }
<!--    添加用戶(hù)-->
    <insert id="addUser" parameterType="main.pojo.User">
        INSERT INTO user(user_phone_number, user_name, user_password)
        VALUES (${userPhoneNumber}, ${userName}, '${userPassword}');
    </insert>

錯(cuò)誤原因:本身來(lái)說(shuō),三個(gè)字段都屬于String類(lèi)型,但是在使用Mybatis時(shí)由于用法的錯(cuò)誤,致使出現(xiàn)上圖的結(jié)果,即本來(lái)手機(jī)號(hào)和名字想作為字符串插入,但是xml里卻當(dāng)成了字段名。如果是整數(shù)還好,String可以解析整數(shù)并且轉(zhuǎn)化為字符串,但是像字母和數(shù)字混合,編譯器就無(wú)法識(shí)別。

本質(zhì)上來(lái)說(shuō),是Mybatis使用上的錯(cuò)誤,不熟悉,理解其實(shí)現(xiàn)機(jī)理所致。同樣的問(wèn)題,也會(huì)出現(xiàn)在其他語(yǔ)句中,所以在實(shí)現(xiàn)時(shí)注意數(shù)據(jù)傳輸?shù)念?lèi)型?。?!

解決方法:也如上圖xml代碼所示,password的變量使用單引號(hào)括住,即可表示為字符串,所以實(shí)際上,應(yīng)該這樣寫(xiě):

<!--    添加用戶(hù)-->
    <insert id="addUser" parameterType="main.pojo.User">
        INSERT INTO user(user_phone_number, user_name, user_password)
        VALUES ('${userPhoneNumber}', '${userName}', '${userPassword}');
    </insert>

或者進(jìn)行參數(shù)化表示:

<insert id="addUser" parameterType="main.pojo.User">
        INSERT INTO user(user_phone_number, user_name, user_password)
        VALUES (#{userPhoneNumber}, #{userName}, #{userPassword});
    </insert>

這種情況下,VALUES內(nèi)容為VALUES(?,?,?) ,數(shù)據(jù)傳入時(shí)自動(dòng)進(jìn)行數(shù)據(jù)類(lèi)型識(shí)別并填充,則沒(méi)有以上報(bào)錯(cuò)。

到此這篇關(guān)于Mybatis操作數(shù)據(jù)時(shí)出現(xiàn):java.sql.SQLSyntaxErrorException: Unknown column 'XXX' in 'field list'的文章就介紹到這了,更多相關(guān)Mybatis出現(xiàn):Unknown column 'xxx' in 'field list'內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Spring Boot使用Maven自定義打包方式

    詳解Spring Boot使用Maven自定義打包方式

    這篇文章主要介紹了Spring Boot使用Maven自定義打包方式,本文通過(guò)多種方式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • spring的jdbctemplate的crud的基類(lèi)dao

    spring的jdbctemplate的crud的基類(lèi)dao

    本文主要介紹了使用spring的jdbctemplate進(jìn)行增刪改查的基類(lèi)Dao的簡(jiǎn)單寫(xiě)法,需要的朋友可以參考下
    2014-02-02
  • 淺拷貝和深拷貝原理分析

    淺拷貝和深拷貝原理分析

    Java 對(duì)象拷貝是為對(duì)象賦值的一種方式,簡(jiǎn)單來(lái)說(shuō)就是創(chuàng)建一個(gè)和原對(duì)象相同的對(duì)象,新創(chuàng)建的對(duì)象是原對(duì)象的一個(gè)副本。面試官賊拉喜歡在面試的時(shí)候問(wèn)一問(wèn)你淺拷貝和深拷貝的原理
    2021-08-08
  • Java遍歷Map對(duì)象集合的六種方式代碼示例

    Java遍歷Map對(duì)象集合的六種方式代碼示例

    Java中的Map是一種鍵值對(duì)映射的數(shù)據(jù)結(jié)構(gòu),它提供了一些常用的方法用于獲取、添加、刪除和修改元素,下面這篇文章主要給大家介紹了關(guān)于Java遍歷Map對(duì)象集合的六種方式,需要的朋友可以參考下
    2024-02-02
  • 關(guān)于分布式鎖(Redisson)的原理分析

    關(guān)于分布式鎖(Redisson)的原理分析

    這篇文章主要介紹了關(guān)于分布式鎖(Redisson)的原理,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Java基于Tcp協(xié)議的socket編程實(shí)例

    Java基于Tcp協(xié)議的socket編程實(shí)例

    這篇文章主要介紹了Java基于Tcp協(xié)議的socket編程實(shí)例,較為詳細(xì)的分析了socket編程客戶(hù)端與服務(wù)器端的具體實(shí)現(xiàn)步驟與使用技巧,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • Eureka源碼閱讀解析Server服務(wù)端啟動(dòng)流程實(shí)例

    Eureka源碼閱讀解析Server服務(wù)端啟動(dòng)流程實(shí)例

    這篇文章主要為大家介紹了Eureka源碼閱讀解析Server服務(wù)端啟動(dòng)流程實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • Java中的HashSet詳解和使用示例_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    Java中的HashSet詳解和使用示例_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    HashSet 是一個(gè)沒(méi)有重復(fù)元素的集合。接下來(lái)通過(guò)實(shí)例代碼給大家介紹java中的hashset相關(guān)知識(shí),感興趣的朋友一起看看吧
    2017-05-05
  • SpringMVC攔截器實(shí)現(xiàn)監(jiān)聽(tīng)session是否過(guò)期詳解

    SpringMVC攔截器實(shí)現(xiàn)監(jiān)聽(tīng)session是否過(guò)期詳解

    這篇文章主要介紹了SpringMVC攔截器實(shí)現(xiàn)監(jiān)聽(tīng)session是否過(guò)期詳解,還是比較不錯(cuò)的,這里分享給大家,供需要的朋友參考。
    2017-11-11
  • Spring jackson原理及基本使用方法詳解

    Spring jackson原理及基本使用方法詳解

    這篇文章主要介紹了Spring jackson原理及基本使用方法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10

最新評(píng)論