Mybaits更新資料1不可修改為0的問題

2021-07-01 21:12:24 字數 727 閱讀 1390

遇到一件詭異的事情,修改資料從0到1的時候沒有問題,但是從1到0的時候提示成功了,但是總是沒有效果。

分析如下: a.從0到1到2沒有問題,說明**邏輯沒有什麼問題

b.從2到1沒有問題,證明上述觀點沒有問題

c.從1到0沒有效果

並且debug到在儲存資料之前,資料也是沒有問題的

得出結論,最有可能出現問題的地方就是sql語句**有問題

修改類的型別為integer

原有sql如下

update merchant

day = #,

where no=#

修改後

update merchant

day = #,

where no=#

問題雖然解決了,但是還沒確定是什麼問題造成的

忽然看到還有這樣乙個問題沒解決,今天有時間測試了一下發現問題依然。

1.檢查**無問題

2.檢查xml 忽然發現integer 型別引數 != 『』應該是解析不通過,可能是這裡mybatis做了處理,具體需要通過原始碼來解釋了

3.測試varcha型別,發現沒有該問題發生。應該是由於mybatis做了處理。

mybatis原始碼待檢視解析sql部分,後續補充

修多種資料庫修改功能比較(不斷更新)

資料庫修改功能主要分為增加列 刪除列 設定列值 改變列屬性等 mysql alter table 表名 add column 列名 varchar 30 oracle oracle資料庫中給表增加一列並設定預設值 alter table 表名 add 列名 型別 default 值 not null...

資料庫的資料的不可讀,髒讀,幻讀和丟失更新

1.出現的原因 之所以出現更新丟失,髒讀,和不可重複讀,幻讀,是因為當兩個事務同時進行的時候,兩者之間互相不知道對方的存在,對自身所處的環境過分樂觀,從而沒有對操作的資料做一定的保護處理,最終導致一些問題的出現。丟失更新問題 上圖中,由於事務a與事務b互相不知道對方的存在,因此導致了悲劇的發生。如果...

SQL sql從0到1 第 5 章 資料更新

1 插入方式一 基本語法 insert into 表名 列名 values 值1,注意 插入的值的型別要與對應欄位的型別一致或相容 不能為null的列必須插入值,可以為null的列插入值有兩種方式 列名和值都省略 寫出列名,值用null 列的順序可以調換,但值與列名要嚴格對應 列數和值的個數必須一致...