MyBatis中配置自動增長

Oracle數據庫

<!-- 添加數據(自動增長) -->
	<insert id="insert" parameterType="Employee">
		<selectKey keyProperty="eid" resultType="int" order="BEFORE">
			select seqstudent.nextval from dual
		</selectKey>
		insert into Employee values(#{eid},#{ename},#{sex},#{age},${birth})
	</insert>

Order:表示執行的順序,before表示在執行下面的添加語句時先執行該段的代碼,after表示後執行

SQServer數據

<!-- 添加數據(自動增長) -->
	<insert id="insert" parameterType="Employee">
		<selectKey keyProperty="eid" resultType="int" order="BEFORE">
			select @@identity
		</selectKey>
		insert into Employee values(#{eid},#{ename},#{sex},#{age},${birth})
	</insert>


MySql數據庫

方式一:

<!-- 添加數據(自動增長) -->
	<insert id="insert" parameterType="Employee">
		<selectKey keyProperty="eid" resultType="int" order="AFTER">
			select LAST_INSERT_ID()
		</selectKey>
		insert into Employee values(#{eid},#{ename},#{sex},#{age},${birth})
	</insert>

方式二:使用UUID函數生成一個全球唯一的32位數字

<!-- 添加數據(自動增長) -->
	<insert id="insert" parameterType="Employee">
		<selectKey keyProperty="eid" resultType="int" order="BEFORE">
			select UUID()
		</selectKey>
		insert into Employee values(#{eid},#{ename},#{sex},#{age},${birth})
	</insert>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章