> 데이터 베이스 > MySQL 튜토리얼 > MyBatis+MySQL 返回插入记录的主键ID_MySQL

MyBatis+MySQL 返回插入记录的主键ID_MySQL

WBOY
풀어 주다: 2016-06-01 13:07:48
원래의
842명이 탐색했습니다.

今天用到了多个表之间的关系,另一个表中的一个字段要以第一个表的主键作为外键。

下面说两种方法,MyBatis+MySQL 返回插入记录的主键ID:

第一种:

<insert id="insertAndGetId" usegeneratedkeys="true" keyproperty="userId" parametertype="com.chenzhou.mybatis.User">	insert into user(userName,password,comment)	values(#{userName},#{password},#{comment})</insert>
로그인 후 복사

第二种:

<insert id="insert" parametertype="cn.***.beans.LogObject">	<selectkey resulttype="java.lang.Integer" order="BEFORE" keyproperty="id">		SELECT LOGS_SEQ.nextval AS ID FROM DUAL	</selectkey>	INSERT INTO S_T_LOGS (		ID, 		USER_ID, 		USER_NAME, 		USER_IP, 		OPERATION_TIME, 		DESCRIPTION, 		RESOURCE_ID) 	VALUES (		#{id}, 		#{userId}, 		#{userName}, 		#{userIp}, 		#{operationTime}, 		#{description}, 		#{resourceId})</insert>
로그인 후 복사


这两种写法都可以,但有两点一定要注意:

一: keyProperty="id" 这个id必须是实体的id,而不是数据表的主键id,否则,得不到正确的返回结果;

二:接收返回值时候,必须用实体的get属性,而不能定义变量,否则,接收不到正确的返回结果:即必须用user.getId()来接收。


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿