Perhaps.
It might be nice to have some sort of scripting support
though. Where you can at least chain operations together. Maybe something
like:
<batchTransaction id="deepInsertPost"
parameterClass="map">
<call
insert="insertPost"/>
<iterator
property="postData.authors">
<call
insert="insertAuthorMap"/>
</iterator>
</batchTransaction>
<insert id="insertAuthorMap">
INSERT INTO authorMap (#post.id#,
#authors[].id#)
</insert>
I certainly could
write this in java, but it seems generic enough that it might be nice to support
it at this level.
From: Jeff Butler [mailto:[EMAIL PROTECTED]
Sent: Wednesday, August 23, 2006 12:52 PM
To: [email protected]
Subject: Re: dynamic script's
The answer is yes - if the driver supports it. If your driver
supports multiple SQL statements in a single prepared statement, then you can do
it. iBATIS doesn't to anything to support or deny this function - it's
totally dependant on the driver support. iBATIS will only prepare one
statement.
In my opinion, this is a bad idea even if the driver supports it. I
think it's better to start a transaction and make multiple calls to the
different insert statements. More portable, and probably more
maintainable.
Jeff Butler
On 8/23/06, Daniel
Pitts <[EMAIL PROTECTED]> wrote:
Is there a way to run an SQL "script" from iBATIS?
Such as:
INSERT INTO foo (#bar#, #baz#);
INSERT INTO ho (#hum#);
Also, if there is, is it possible to dynamically generate the SQL to do
so?
Eg:
INSERT INTO foo (#bar#, #baz#);
<iterate property="hos">INSERT INTO ho (#bar#, #hos[]#);</iterate>
Thanks.
