(Fwd) Question about DBD::Oracle
- Forwarded message from Sumiya sumiy...@tradewintech.co.jp - Date: Wed, 16 Mar 2011 09:19:15 +0900 From: Sumiya sumiy...@tradewintech.co.jp To: tim.bu...@pobox.com Subject: Question about DBD::Oracle Dear Mr. Tim Bunce, I would like to ask you about DBD::Oracle. Would you tell me what makes difference behaviourbetween OCI 8 and OCI 9.2 on ORA_VARCHAR2? Is is a bug of DBD or OCI? Please explain more detail. http://search.cpan.org/~pythian/DBD-Oracle-1.27/Oracle.pm#Connect_Attributes ORA_VARCHAR2 Oracle clients using OCI 8 will strip trailing spaces and allow embedded \0 bytes. Oracle clients using OCI 9.2 do not strip trailing spaces and allow embedded \0 bytes. This is the normal default placeholder type. Yours faithfully, Kiyoshi Sumiya, - End forwarded message -
RE: (Fwd) Question about DBD::Oracle
Hmm talk about ancient history. Not a but in either me thinks I believe this is the default behaviour of early OCI clients like OCI 7 to trim all varchars. This changed for some reason by Oracle in OCI 8 and then changed again by Oracle in 9 and later clients. There are different ways the various clients handle null terminated strings as well which is another kettle of fish. The short of it is since 9 there has been no changes but eailer version there where a number of different ways of handling trailing spaces. Correct me if I am wrong Tim but I do not think it is a bug in DBD::Oracle just different implementations on OCI clients. Hope this helps cheers John Date: Tue, 24 May 2011 14:40:54 +0100 From: tim.bu...@pobox.com To: dbi-users@perl.org CC: sumiy...@tradewintech.co.jp Subject: (Fwd) Question about DBD::Oracle - Forwarded message from Sumiya sumiy...@tradewintech.co.jp - Date: Wed, 16 Mar 2011 09:19:15 +0900 From: Sumiya sumiy...@tradewintech.co.jp To: tim.bu...@pobox.com Subject: Question about DBD::Oracle Dear Mr. Tim Bunce, I would like to ask you about DBD::Oracle. Would you tell me what makes difference behaviourbetween OCI 8 and OCI 9.2 on ORA_VARCHAR2? Is is a bug of DBD or OCI? Please explain more detail. http://search.cpan.org/~pythian/DBD-Oracle-1.27/Oracle.pm#Connect_Attributes ORA_VARCHAR2 Oracle clients using OCI 8 will strip trailing spaces and allow embedded \0 bytes. Oracle clients using OCI 9.2 do not strip trailing spaces and allow embedded \0 bytes. This is the normal default placeholder type. Yours faithfully, Kiyoshi Sumiya, - End forwarded message -
Re: (Fwd) Question about DBD::Oracle
On 24/05/11 15:00, John Scoles wrote: Hmm talk about ancient history. Not a but in either me thinks I believe this is the default behaviour of early OCI clients like OCI 7 to trim all varchars. This changed for some reason by Oracle in OCI 8 and then changed again by Oracle in 9 and later clients. There are different ways the various clients handle null terminated strings as well which is another kettle of fish. The short of it is since 9 there has been no changes but eailer version there where a number of different ways of handling trailing spaces. Correct me if I am wrong Tim but I do not think it is a bug in DBD::Oracle just different implementations on OCI clients. I think that is what ChopBlanks in DBI gets around - different DB behaviours wrt to trailing spaces. I don't see it as a bug in DBD::Oracle if different versions of Oracle do different things, people coding to them might want those different behaviours and if they don't they can use ChopBlanks to get no trailing spaces. Hope this helps cheers John Martin Date: Tue, 24 May 2011 14:40:54 +0100 From: tim.bu...@pobox.com To: dbi-users@perl.org CC: sumiy...@tradewintech.co.jp Subject: (Fwd) Question about DBD::Oracle - Forwarded message from Sumiyasumiy...@tradewintech.co.jp - Date: Wed, 16 Mar 2011 09:19:15 +0900 From: Sumiyasumiy...@tradewintech.co.jp To: tim.bu...@pobox.com Subject: Question about DBD::Oracle Dear Mr. Tim Bunce, I would like to ask you about DBD::Oracle. Would you tell me what makes difference behaviourbetween OCI 8 and OCI 9.2 on ORA_VARCHAR2? Is is a bug of DBD or OCI? Please explain more detail. http://search.cpan.org/~pythian/DBD-Oracle-1.27/Oracle.pm#Connect_Attributes ORA_VARCHAR2 Oracle clients using OCI 8 will strip trailing spaces and allow embedded \0 bytes. Oracle clients using OCI 9.2 do not strip trailing spaces and allow embedded \0 bytes. This is the normal default placeholder type. Yours faithfully, Kiyoshi Sumiya, - End forwarded message - -- Martin J. Evans Easysoft Limited http://www.easysoft.com