亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

語法錯誤,關于UserPasswordDOMapper的,請大神幫忙看下。。。

2019-06-03 21:56:29.690? WARN 36608 --- [nio-8080-exec-3] .m.m.a.ExceptionHandlerExceptionResolver : Resolved [org.springframework.jdbc.BadSqlGrammarException:?

### Error updating database.? Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

### The error may involve com.miaoshaproject.dao.UserPasswordDOMapper.insertSelective-Inline

### The error occurred while setting parameters

### SQL: insert into user_password

### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

; bad SQL grammar []; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1]

上面是報的錯


<insert?id="insertSelective"?parameterType="com.miaoshaproject.dataObject.UserPasswordDO">
??insert?into?user_password
??<trim?prefix="("?suffix=")"?suffixOverrides=",">
????<if?test="id?!=?null">
??????id,
????</if>
????<if?test="encrptPassword?!=?null">
??????encrpt_password,
????</if>
????<if?test="userId?!=?null">
??????user_id,
????</if>
??</trim>
??<trim?prefix="values?("?suffix=")"?suffixOverrides=",">
????<if?test="id?!=?null">
??????#{id,jdbcType=INTEGER},
????</if>
????<if?test="encrptPassword?!=?null">
??????#{encrptPassword,jdbcType=VARCHAR},
????</if>
????<if?test="userId?!=?null">
??????#{userId,jdbcType=INTEGER},
????</if>
??</trim>
</insert>

上面是我對應的mappper里面的sql語句



https://img1.sycdn.imooc.com//5cf527ca00019b3f03750379.jpg

這個是本人創建的數據庫


class?UserPasswordDO?{
????private?Integer?id;

????private?String?encrptPassword;

????private?Integer?userId;

????public?UserPasswordDO(Integer?id,?String?encrptPassword,?Integer?userId)?{
????????this.id?=?id;
????????this.encrptPassword?=?encrptPassword;
????????this.userId?=?userId;
????}

????public?UserPasswordDO()?{
????????super();
????}

????public?Integer?getId()?{
????????return?id;
????}

????public?void?setId(Integer?id)?{
????????this.id?=?id;
????}

????public?String?getEncrptPassword()?{
????????return?encrptPassword;
????}

????public?void?setEncrptPassword(String?encrptPassword)?{
????????this.encrptPassword?=?encrptPassword?==?null???null?:?encrptPassword.trim();
????}

????public?Integer?getUserId()?{
????????return?userId;
????}

????public?void?setUserId(Integer?userId)?{
????????this.userId?=?userId;
????}
}

這是對應的dataObjext?



難受啊

正在回答

4 回答

直接debug查userPassDO的值也行,debug用不慣的話,可以直接在UserPassDO.class里寫toString()方法,然后打印出來看看值

0 回復 有任何疑惑可以回復我~
#1

慕函數7093388 提問者

確實好像是那邊有問題,太感謝了!
2019-06-04 回復 有任何疑惑可以回復我~

請問樓主最后怎么解決的嘞?

0 回復 有任何疑惑可以回復我~

往user_password表中插入的時候id是沒有默認值的,視頻里是怎么直接插進去的???

0 回復 有任何疑惑可以回復我~

你可以試著打印一下

userPasswordDO

對象看看里面的userid字段是不是空,可能之前建表的時候你沒有設初始值,然后就會這個亞子,

接下來看看UserDOMapper.xml里面的插入語句是否寫了主鍵返回獲得,把這個獲得的主鍵傳給UserModel,然后把這個UserModel傳給組裝userPassWordDO的方法里,看看行不行

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

語法錯誤,關于UserPasswordDOMapper的,請大神幫忙看下。。。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號