ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nathan Maves" <nathan.ma...@gmail.com>
Subject Re: R: insert statement
Date Thu, 25 Dec 2008 01:45:21 GMT
I am not sure why people continue to do this....

why not

insert into some_table (
  id,
  state,
  date
) values (
  #id:NUMERIC#,
  #state:VARCHAR#,
  #date:DATE#
)

This way it will insert the right data every time.  If the value is
null you get a null in the DB.  I think you are only going to cause
yourself extra pain in the long run with long complicated dynamic
sqlmaps.

Nathan

On Wed, Dec 24, 2008 at 3:28 AM, De Gaetano Giuseppe
<degaetano@pitagora.it> wrote:
> Hi all,
>
> I faced with the same problem and I solved in this way:
>
> <insert id="insert_dynamic" parameterClass="Input">
>
>                         INSERT INTO some_table
>
>                         <dynamic prepend=" (">
>
>                                    <isNotNull prepend="," property="id ">
>
>                                                            ID
>
>                                    </isNotNull>
>
>                                    <isNotNull prepend="," property="state">
>
>                                                            STATE
>
>                                    </isNotNull>
>
>                                    <isNotNull prepend="," property="date">
>
>
> DATE
>
>                                    </isNotNull>
>
>                                    )
>
>                         </dynamic>
>
>                         <dynamic prepend=" VALUES (">
>
>                                    <isNotNull prepend="," property="id ">
>
>
> #id#
>
>                                    </isNotNull>
>
>                                    <isNotNull prepend="," property="state">
>
>
> #state#
>
>                                    </isNotNull>
>
>                                    <isNotNull prepend="," property="date">
>
>
> #date#
>
>                                    </isNotNull>
>
>                                    )
>
>                         </dynamic>
>
>             </insert>
>
>
>
> Giuseppe
>
>
>
> ________________________________
>
> Da: Gil Vernik [mailto:Gil.V@solaredge.com]
> Inviato: mercoledì 24 dicembre 2008 10.49
> A: user-java@ibatis.apache.org
> Oggetto: insert statement
>
>
>
> Hi there,
>
> I would like to write a dynamic insert statement, but both fields and values
> are dynamic.
>
> I mean
>
> <insert id="someIDhere" parameterClass="java.util.HashMap">
>
>         insert into table_one (
>
>             !!! dynamic list of keys from the HashMap
>
>         ) values (
>
>             !!! values
>
>         );
>
> </insert>
>
>
>
> I want both the list of column names and it's values to be filled
> automatically, depends on the parameterClass. How can I do it? I don't care
> to use something else, instead of java.util.Hashmap.
>
>
>
> Thanks,
>
> Gil.
>
>
>
> This message contains confidential information and is intended only for the
> individual named. If you are not the named addressee you should not
> disseminate, distribute or copy this e-mail. Please notify the sender
> immediately by e-mail if you have received this e-mail by mistake and delete
> this e-mail from your system. E-mail transmission cannot be guaranteed to be
> secure or error-free as information could be intercepted, corrupted, lost,
> destroyed, arrive late or incomplete, or contain viruses. The sender
> therefore does not accept liability for any errors or omissions in the
> contents of this message, which arise as a result of e-mail transmission. If
> verification is required please request a hard-copy version.
Mime
View raw message