duplicate entry in sql for userId =1,记myBatis使用过程中碰到的一些问题

Mysql中的一个现象:

今天在做‘以书会友’项目时,碰到一个问题。具体情况是这样的,

项目中有一个users表,包含十一个字段,只有一个是主键,userId,并且是自增长类型的。

项目用的是SSM框架,在userMapper.xml文件中有这么一个配置,用于往数据库里添加user信息。

<insert id="insert" parameterType="com.ice.ht.model.entity.Users">

        insert into users (userName, passWord,userAdress,userCall,userIC,hidden,userType,userAcountName,regTime,loginTime)

        values (#{userName,jdbcType=VARCHAR}, #{passWord,jdbcType=VARCHAR}, #{userAdress,jdbcType=VARCHAR}, #{userCall,jdbcType=VARCHAR}, #{userIC,jdbcType=VARCHAR},

        #{hidden,jdbcType=BOOLEAN},

    #{userType,jdbcType=INTEGER},#{userAcountName,jdbcType=VARCHAR},#{regTime,jdbcType=TIMESTAMP},#{loginTime,jdbcType=TIMESTAMP})

   </insert>

由于开始时把自增长的主键userId也写进了该段配置中,一直报错duplicate entry in sql for userId =1,这个联系我们平时写sql往数据库里添加数据就很容易理解,因为自增长的主键不用写进sql。

     还有一个问题就是:我在把userId拿掉之后,成功地执行了insert操作,但是在数据库中显示的数据却是从4开始的,

这个问题有点奇怪,因为之前的数据并没有插入成功,但是却影响了userId的顺序。以后留意一下这方面的问题。

猜你喜欢

转载自my.oschina.net/u/3442347/blog/1790677