Date: 10/06/00
- Next message: Cory Factor: "[phplib] Am I on the right track???????"
- Previous message: Theodore Hope: "[phplib] how to _not_ force login page?"
- In reply to: Mike Green: "Re: [phplib] PHPLIB and oracle binding for >2000 characters"
- Next in thread: Mike Green: "Re: [phplib] PHPLIB and oracle binding for >2000 characters"
- Reply: Mike Green: "Re: [phplib] PHPLIB and oracle binding for >2000 characters"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Without actually looking at the code, here's my wild-ass guess.
The interface to Oracle in PHP is most likely written using Oracle's
Pro*C pre-compiler. It takes embedded database statements and generates
the lengthy and obtuse C statements required to call Oracle. Pro*C uses
a concept it calls "bind variables" which the programmer declares in
advance of actually making the SQL statement execution call to Oracle.
Oracle's C API then uses those bind variables as a one-row cursor, and
one can programmatically "next" through the result set, if a multiple
row select. Actually there are 4 distinct cases, but I can no longer
remember what they are and do not own the Oracle documentation.
My guess is that there is way to send data to an Oracle server for
insert or update style SQL statements that does not involve the use of
bind variables, and that the non-bind variable method was used by the
PHPLIB Oracle interface. However, as you have apparently discovered,
this alternate method is limited to 4000 characters. In order to send
more data, a real bind variable must be used.
As you mentioned, it sounds like a bind variable interface exists in PHP
itself (again, I have not researched this). If so, indeed it seems that
you will need to modify the Oracle DB class in PHPLIB to make it use
bind variables instead of whatever method it is using now.
This is my guess based on maintaining two high-speed search engines
written in C and Pro*C. All of that work used bind variables for data
transfer.
Good luck.
..chris
-- Chris Johnson / Chaska Internet Consulting LLP> -----Original Message----- > From: Mike Green [mailto:Mike.Green <email protected>] > Sent: Thursday, October 05, 2000 11:56 AM > Cc: phplib <email protected>; fabrizio.ermini <email protected> > Subject: Re: [phplib] PHPLIB and oracle binding for >2000 characters > > > Thanks! > > My problem is at the application level. And, if I understand > CT_split_SQL from a brief > look at it, I don't want to split data that belongs in one > row up into multiple rows. The > Oracle column field is a CLOB and able to hold 4 GB, not just > 4000 characters. It's just > that Oracle apparently requires one to input stings of more > than 4000 characters in what > seems to me to be a rather obtuse manner, since I have never > used "bind" variables. > > The solution is quite possibly very simple. But from past > experience with such things, I > know that I can easily take a wrong turn at some early point > and end up making things very > complex long before I discover the simple solution ;-) Thus > pointers to the right paths > to take will be much appreciated. > > Cheers! > > Mike Green
--------------------------------------------------------------------- To unsubscribe, e-mail: phplib-unsubscribe <email protected> For additional commands, e-mail: phplib-help <email protected>
- Next message: Cory Factor: "[phplib] Am I on the right track???????"
- Previous message: Theodore Hope: "[phplib] how to _not_ force login page?"
- In reply to: Mike Green: "Re: [phplib] PHPLIB and oracle binding for >2000 characters"
- Next in thread: Mike Green: "Re: [phplib] PHPLIB and oracle binding for >2000 characters"
- Reply: Mike Green: "Re: [phplib] PHPLIB and oracle binding for >2000 characters"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

