在使用MyBatis進行開發的過程中,當你遇到向某張數據庫表中插入一條記錄時,出現數據插入不正確,如果自己確定是因爲主鍵的原因,類似如下錯誤提示:
而你的本意是主鍵自動增長,那麼,可參考如下方法嘗試解決:
第一步:在配置中設置主鍵爲自增長(數據庫我使用的是MySql)
如果你是使用MyBatis自動生成的插入語句,除了設置上面給出的useGeneratedKeys=”true”之外,還需要將如下圖所示紅色部分去掉,這是查詢主鍵最大值的一段代碼。
如果還未解決,這時你應該檢查一下你的數據庫表中主鍵設置,是否爲自動增長設置。
可以在sql語句中主鍵後加上auto_increment.
如果你使用的是工具“Navicat for MySQL”,比如我要設置如圖所示中tb-device_basic表的主鍵爲自動增長,點擊“設計表”,再將“自動增長”勾中即可,然後再嘗試一下。