ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yusuf" <Yu...@ekalife.co.id>
Subject RE: dynamic insert question
Date Tue, 07 Feb 2006 08:29:18 GMT
oops I'm sorry, didnt see that..

Yusuf S.

-----Original Message-----
From: Meindert [mailto:meindert@pastelebusiness.com]
Sent: Tuesday, February 07, 2006 3:22 PM
To: user-java@ibatis.apache.org
Subject: RE: dynamic insert question


He already said that ## didn't work (because it is a select and not a
parameter?)

MEINDERT HOVING
-----Original Message-----
From: Yusuf [mailto:Yusuf@ekalife.co.id] 
Sent: 07 February 2006 09:50 AM
To: user-java@ibatis.apache.org
Subject: RE: dynamic insert question

Well I think the solution is not using $$ but ##
select #family#,partnum,parttype,'N' from cto.partinfo 
 

-----Original Message-----
From: stevenlou@gmail.com [mailto:stevenlou@gmail.com]
Sent: Tuesday, February 07, 2006 2:19 PM
To: user-java@ibatis.apache.org
Subject: Re: dynamic insert question


Hi,
 
Thanks for your promp reply, but the question isn't in the "domain",
this part is working. The problem is when the select result(first step)
insert into the target table, seems it cann't know the "family" type, so
that it can't insert. 
 
Actually I want the select is like this:
select $family$,partnum,parttype,'N' from cto.partinfo where ......
 
And I will input one parameter like '8848' (or others) to family.
 
What's solution for it?
 
Thanks
Steven

 
On 2/7/06, Yusuf < Yusuf@ekalife.co.id <mailto:Yusuf@ekalife.co.id> >
wrote: 

Hi,
Does the "PartVO" object have a property named "domain" and it's a list
or an array? 

-----Original Message-----
From: stevenlou@gmail.com <mailto:stevenlou@gmail.com>  [mailto:
stevenlou@gmail.com <mailto:stevenlou@gmail.com> ]
Sent: Tuesday, February 07, 2006 1:33 PM
To: user-java@ibatis.apache.org <mailto:user-java@ibatis.apache.org> 
Subject: dynamic insert question


Dear all,

I want insert the table via one dynamic select, the "PartVO" is one 
object and it has "family" attribute, and it's type is "String",

<insert id="insertFamily" parameterClass="PartVO">
   <![CDATA[
insert into cto.partfamily (family,partnum,parttype,active_flag)
select $family$,partnum,parttype,'N' from cto.partinfo where partnum in
    ]]>
<iterate property="domain" open="(" close=")" conjunction=","> 
    #domain[ ]#
</iterate>
</insert>

But it cause following error,seems the select can't get string value for
"family" column, but in the "PartVO" object, I already defined its type 
is "String", and others are working(I use DB2 database):
Caused by: COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT]
SQL0408N  A value is not compatible with the data type of its assignment
target.  Target name is "FAMILY".  SQLSTATE=42821

How can I make this function working?

Thanks so much for your warm-heated help!

Steven


-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.375 / Virus Database: 267.15.2/252 - Release Date:
06/02/2006
 

-- 
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.375 / Virus Database: 267.15.2/252 - Release Date:
06/02/2006
 



Mime
View raw message