1、Error updating database. Cause: java.sql.SQLException: Data truncated for column 'seedid' at row 1控制台出现这个错误SQL: INSERT INTO sellinfo( phone, storephone, seedid, seedname, price, number, totalprofit, totalmoney, date, details ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )
2、对应的实体类private Integer id;//主键private String phone;//电话private String storePhone;//经销商电话private String number;//数量private Double totalProfit;//个人购买利润,用于计算奖品登记private Double totalMoney;//总金额private Date date;//时间private String details;//销售详情private Integer storeSellMoney;//店铺销售额private Custom custom;//dtoprivate String seedId;//种子idprivate String name;//姓名
3、省略set、get方法对应mapper文件<insert id="insert">INSERT INTO sellinfo(phone,storephone,seedid,seedname,price,number,totalprofit,totalmoney,date,details
4、) VALUES (#{phone,jdbcType=VARCHAR},#{storePhone,jdbcT烤恤鹇灭ype=VARCHAR},#{seedId,jdbcType=VARCHAR},#{seedName,jdbcType=VARCHAR},#{price,jdbcType=DOUBLE},#{number,jdbcType=VARCHAR},#{totalProfit,jdbcType=DOUBLE},#{totalMoney,jdbcType=DOUBLE},#{date,jdbcType=TIMESTAMP},#{details,jdbcType=VARCHAR}) </insert>
5、一开始以为是sql语句写错,反复检查好几遍都没有错误;后来检查数据库发现数据库类型为int类型,和实体类不匹配修改为varchar,问题解决
6、还遇到一些问题,记录public static java.sql.Timestamp format( java.util.Date d){SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String str = sdf.format(d);java.sql.Timestamp sqlDate = java.sql.Timestamp.valueOf(str);return sqlDate;}将string类型的时间转换成java.lang.sql的时间类