Sorry not to have a look at this earlyer I have been away from most ost
Aug and only just noticed this today

Can you send me a script that will create the table and the stored
procedure and then I will be able to do some debugging??

Me thinks this is a UFT issue of some form.  Some of the parts of
DBD::ORacle are a little off when it comes to using binary data with utf8.

can you run this on you oracle box

select * from nls_database_parameters

and send me the results so I can see what you charset is


cheers
John Scoles



> Okay, I revised my code for test thusly:
>
>              my @pkt = unpack("C*", $packetCard) ;
>              my $pkt = Bin2Hex_Packet([EMAIL PROTECTED]) ;
>              $osaq->bind_param(':ImmPacket', $pkt
>                                 { ora_type => ORA_RAW }) ;
>              print "$pkt\n" ;
>              $osaq->bind_param(':ImmPacketLen', length($pkt)) ; # bind
> size
>
> ... And I still don't see a change, except the :ImmPacketLen correctly
> shows up as 414, but there is still no accompanying binary (or
> otherwise) user_data in the queue.
>
> "USER_DATA" needs to show up as binary with a length of 207.  I tried
> passing 207 as the length, and still no luck.  Anyone got any ideas?
>
> Thanks,
>
> Joe
>
> -----Original Message-----
> From: Tim Bunce [mailto:[EMAIL PROTECTED] On Behalf Of Tim Bunce
> Sent: Wednesday, August 06, 2008 3:51 AM
> To: Orcino, Joe
> Cc: dbi-users@perl.org; Phelan, Tom
> Subject: Re: Bug in DBD::Oracle v 1.21 ?
>
> On Tue, Aug 05, 2008 at 04:53:16PM -0700, Orcino, Joe wrote:
>>              $osaq->bind_param(':ImmPacket', $packetCard
>>                                 { ORA_TYPE => ORA_RAW }) ;
>
>> For each execution (in a loop), I get no errors and the queue is
>> incremented (indicating receipt of a record), but in the database, my
>> binary :ImmPacket field is empty in the queue!
>> I have made sure that the variable I am passing ($packetCard) does
>> contain 207 bytes of binary information.
>
> I think the ORA_RAW type needs to be encoded as pairs of hex digits, and
> not as a binary string. In which case you need to use pack("H*",...).
> (I might be wrong though, it's been a while since I've used RAW.)
>
> Tim.
> **************************************************************************************
> This e-mail is confidential, the property of NDS Ltd and intended for the
> addressee only.  Any dissemination, copying or distribution of this
> message or any attachments by anyone other than the intended recipient is
> strictly prohibited.  If you have received this message in error, please
> immediately notify the [EMAIL PROTECTED] and destroy the original
> message.  Messages sent to and from NDS may be monitored.  NDS cannot
> guarantee any message delivery method is secure or error-free.
> Information could be intercepted, corrupted, lost, destroyed, arrive late
> or incomplete, or contain viruses.  We do not accept responsibility for
> any errors or omissions in this message and/or attachment that arise as a
> result of transmission.  You should carry out your own virus checks before
> opening any attachment.  Any views or opinions presented are solely those
> of the author and do not necessarily represent those of NDS.
>
> To protect the environment please do not print this e-mail unless
> necessary.
>
> NDS Limited Registered office: One Heathrow Boulevard, 286 Bath Road, West
> Drayton, Middlesex, UB7 0DQ, United Kingdom. A company registered in
> England and Wales  Registered no. 3080780   VAT no. GB 603 8808 40-00
> **************************************************************************************
>


Reply via email to