You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ibatis.apache.org by "Heath, Terry" <te...@ttu.edu> on 2005/03/23 20:41:26 UTC
Problem with image data type in ms sql server and .net ibatis
Hi -
I get this error:
UnitTesting.DataLayerTests.PAF_ATTACHMENTS_Create :
System.Data.SqlClient.SqlException : Operand type clash: nvarchar is
incompatible with image
When trying to insert a row into the database. I've got a column with
data type = image, and a property (tied to the column in the datamap)
with type byte[].
I don't know what I should set as the nullValue for the byte[] property.
Here's the paramater map and the insert statement:
<parameterMaps>
<parameterMap id="InsertPAF_ATTACHMENTSParam"
class="PAF_ATTACHMENTS">
<parameter property="TransNo" nullValue="-9999" />
<parameter property="ImageData" />
<parameter property="ContextType" />
<parameter property="FileName" />
<parameter property="UserID" />
<parameter property="FileSize" nullValue="-9999" />
<parameter property="Timestamp" nullValue="1/1/0001 12:00:00
AM" />
</parameterMap>
<parameterMap id="UpdatePAF_ATTACHMENTSParam"
extends="InsertPAF_ATTACHMENTSParam">
<parameter property="AttachmentID" nullValue="-9999" />
</parameterMap>
</parameterMaps>
<insert id="PAF_ATTACHMENTSCreate"
parameterMap="InsertPAF_ATTACHMENTSParam">
<selectKey property="AttachmentID" resultClass="Integer">
select cast(@@IDENTITY as int) as value
</selectKey>
insert into [PAF_ATTACHMENTS] (
TransNo,
ImageData,
ContextType,
FileName,
FileSize,
UserID,
Timestamp
) values (
?,
?,
?,
?,
?,
?,
?
) </insert>
Here's the relevant parts of the code:
Private _imageData() As Byte
...
Public Property ImageData() As Byte()
Get
Return Me._imageData
End Get
Set(ByVal Value As Byte())
Me._imageData = Value
End Set
End Property
If you know what I'm doing wrong, please help :)
Thanks!
Terry
Re: Problem with image data type in ms sql server and .net ibatis
Posted by Brandon Goodin <br...@gmail.com>.
Please, do not cross post your issues. This list is not for support questions.
Brandon
On Wed, 23 Mar 2005 13:41:26 -0600, Heath, Terry <te...@ttu.edu> wrote:
> Hi -
>
> I get this error:
> UnitTesting.DataLayerTests.PAF_ATTACHMENTS_Create :
> System.Data.SqlClient.SqlException : Operand type clash: nvarchar is
> incompatible with image
>
> When trying to insert a row into the database. I've got a column with
> data type = image, and a property (tied to the column in the datamap)
> with type byte[].
>
> I don't know what I should set as the nullValue for the byte[] property.
> Here's the paramater map and the insert statement:
>
> <parameterMaps>
>
> <parameterMap id="InsertPAF_ATTACHMENTSParam"
> class="PAF_ATTACHMENTS">
> <parameter property="TransNo" nullValue="-9999" />
> <parameter property="ImageData" />
> <parameter property="ContextType" />
> <parameter property="FileName" />
> <parameter property="UserID" />
> <parameter property="FileSize" nullValue="-9999" />
> <parameter property="Timestamp" nullValue="1/1/0001 12:00:00
> AM" />
> </parameterMap>
>
> <parameterMap id="UpdatePAF_ATTACHMENTSParam"
> extends="InsertPAF_ATTACHMENTSParam">
> <parameter property="AttachmentID" nullValue="-9999" />
> </parameterMap>
>
> </parameterMaps>
>
> <insert id="PAF_ATTACHMENTSCreate"
> parameterMap="InsertPAF_ATTACHMENTSParam">
> <selectKey property="AttachmentID" resultClass="Integer">
> select cast(@@IDENTITY as int) as value
> </selectKey>
> insert into [PAF_ATTACHMENTS] (
> TransNo,
> ImageData,
> ContextType,
> FileName,
> FileSize,
> UserID,
> Timestamp
> ) values (
> ?,
> ?,
> ?,
> ?,
> ?,
> ?,
> ?
> ) </insert>
>
> Here's the relevant parts of the code:
> Private _imageData() As Byte
> ...
> Public Property ImageData() As Byte()
> Get
> Return Me._imageData
> End Get
> Set(ByVal Value As Byte())
> Me._imageData = Value
> End Set
> End Property
>
> If you know what I'm doing wrong, please help :)
>
> Thanks!
> Terry
>