Thanks for sharing this Nick. Not good for documenting your intentions but could you also use a mapped SELECT statement instead?
From: Clinton Begin [mailto:clinton.be...@gmail.com] Sent: Friday, August 28, 2009 11:02 AM To: user-java@ibatis.apache.org Subject: Re: Insert statement returns generated key I don't, but that's pretty awesome that you figured that out and it works... LOL. :-) Clinton On Fri, Aug 28, 2009 at 8:56 AM, Beary, Nick (EHQ) <nbe...@express-scripts.com> wrote: Hello, I looked around for an answer to this but didn't see anything. To insert objects in our database, I have to use a macro that returns the key of the newly inserted object. This means that the entirety of my insert statement is located in the selectKey section. Because an SQL statement is required in the PCDATA section outside of <selectKey>, I just put a ; there. So it looks like this: <insert id="insert-xxx" parameterClass="xxx"> ; <selectKey resultClass="int" keyProperty="ID"> exec insert_macro(...) </selectKey> </insert> Does anybody know a more elegant/less hacky solution to this? We are using Teradata 12.0. Thanks! Nick