Ok - I guess you're right. Here's the output from DBI->trace(3):

dbd_bind_ph(): bind :p1 <== '7553' (type 0 (DEFAULT (varchar)))
dbd_rebind_ph_char() (1): bind :p1 <== '7553' (size 4/8/0, ptype
4(VARCHAR), otype 1 )
dbd_rebind_ph_char() (2): bind :p1 <== ''755' (size 4/8, otype
1(VARCHAR), indp 0, at_exec 1)
      bind :p1 as ftype 1 (VARCHAR)
dbd_rebind_ph(): bind :p1 <== '7553' (in, not-utf8, csid 1->0->1,
ftype 1 (VARCHAR), csform 0->0, maxlen 8, maxdata_size 0)
   dbd_st_execute SELECT (out0, lob0)...

However, there does seem to be something weird going on in the debug
output -- an off-by-one error in the third line of the output: ''755'

This is with DBI 1.51, DBD::Oracle 1.22.

On Fri, May 8, 2009 at 9:59 AM, Charles Jardine <c...@cam.ac.uk> wrote:
> On 08/05/09 15:26, E R wrote:
>>
>> On Fri, May 8, 2009 at 5:40 AM, Charles Jardine <c...@cam.ac.uk> wrote:
>>>
>>> You do not say which perl driver your are using to talk to Oracle.
>>> The DBD::Oracle driver binds all placeholders as strings by default.
>>>
>>> Are you using DBD::Oracle?
>>
>> Yes, I am using DBD::Oracle.
>>
>> What other perl drivers are there for Oracle?
>
> You could be using DBD::ODBC and and Oracle ODBC driver.
>
> If its DBD::Oracle, you could turn on tracing at level 3
> with
>
>  DBI->trace(3)
>
> You will then be able to see the type of the bind in the trace.
> I will be supprosed if it is not 'varchar'.
>
> --
> Charles Jardine - Computing Service, University of Cambridge
> c...@cam.ac.uk    Tel: +44 1223 334506, Fax: +44 1223 334679
>

Reply via email to