From: Jamis Buck Date: 2004-07-16T06:05:45+09:00 Subject: Re: scripting language (fwd) Randy Lawrence wrote: > Austin Ziegler wrote: > >> On Fri, 16 Jul 2004 04:25:47 +0900, Jamis Buck >> wrote: >> >>> Carl Youngblood wrote: >>> >>>> Isn't there source code for the oci oracle protocol out there? A lot >>>> of open source projects have that option. I'm thinking of PHP. You >>>> might want to look at the source before you try reverse-engineering >>>> anything. >>>> >>> >>> Well, looking at the OCI stuff in PHP, it looks like it relies on the >>> Oracle client being installed as well. It then makes API calls into the >>> Oracle client libraries to connect to and query the database. >>> >>> What I would like is to remove the Oracle client as a dependency, just >>> as the Oracle JDBC (thin) client does. The thin (as opposed to the oci) >>> Oracle JDBC client implements in pure Java the network protocols that >>> communicate with the Oracle database server. >>> >>> This means that the thin client will ultimately be less responsive than >>> the oci client, but its GREAT for working on your own machine. >>> >>> I'm hoping that something like this can be written for Ruby, in Ruby, >>> without the need to create an extension module in C to bridge into the >>> Oracle OCI stuff (which is what the current ruby oracle module does). >>> >>> I'm not volunteering to write it--I've got too much on my plate >>> already--I was just wondering if anyone else has thought about doing >>> this. >> >> >> >> I don't do any direct work with Oracle anymore; if I were to do so, I >> might look at reverse engineering this -- but I also spent the last >> little while to see if anyone has come up with an open source Oracle >> thin driver; it appears not. >> >> -austin > > > Are there dynamic libraries that do this? If the API is documented, > maybe its just a matter of creating Ruby wrappers using ext/dl or swig. > That's just the thing... in order to use the API, you have to have the oracle client installed. What if you don't have access to the oracle client? What if you don't want to install it? It is, after all, quite large. What if (*gasp*) you're using an OS that isn't supported by the oracle client? What I am referring to is a pure Ruby client that communicates via TCP with the Oracle database server, wherever it may be. There are already ruby modules that communicate with oracle via its API. The problem is that the OP doesn't have access to a compiler and the oracle modules aren't distributed in binary form. :( Thus, a pure Ruby solution would (IMO) be desirable. -- Jamis Buck jgb3@email.byu.edu http://www.jamisbuck.org/jamis "I use octal until I get to 8, and then I switch to decimal."