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 >