mybatis同时执行两条插入语句,第一条数据生成的ID作为第二条插入语句的参数

请问应该怎么写,如果能加上对第一条结果的判断就更好了,谢谢
<insert id="addUser" parameterType="User">
<selectKey resultType="int" keyProperty="id">
SELECT LAST_INSERT_ID()
</selectKey>
INSERT into user(name) values(#{name});
INSERT into user_grade(user_id,grade_id) values(#{id},#{grade.id})
</insert>
我是这样写的,结果第二条语句是这样INSERT into user_grade(user_id,grade_id) values(0,1),没能执行
一共就这些分,上次提问把分都用掉了

MYSQL?ORACLE?
ORACLE:
<INSERT>
<SELECTKEY ....>
SELECT XXXX
</SELECTKEY>
INSERT XXX
</INSERT>
MYSQL:
<INSERT>
INSERT XXX
<SELECTKEY ....>
SELECT XXXX
</SELECTKEY>
</INSERT>

参考:
http://lelglin.iteye.com/blog/1452403追问

对不起啊,是MYsql,怪我没说清楚

追答

MYSQL 将selectKey放在insert之后试下

追问

刚吃饭的,我试下,谢谢了

温馨提示:答案为网友推荐,仅供参考
相似回答