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 > ************************************************************************************** >