T
Thomas Kellerer
Phillip Gawlowski, 16.04.2008 16:39:
This is not want I meant. It's the driver that provides the JDBC API to the application. This is true for all 100% Java JDBC drivers. (e.g. the Oracle, SQL Server, MySQL).
All of them have to use the core functions available in the JDK. The JDK itself does not contain any implementation of the JDBC API (apart from the DriverManager maybe), so all those drivers basically use the standard Java IO and network classes to communicate with their backend (and of course their own classes that support the DBMS protocol)
I'm a complete newbie with Ruby, but from what I have seen, I would be very surprised if it wasn't possible to implement a pure Ruby implementation to communicate with a Postgres backend.
How much work that would be, is probably another question though.
Thomas
Thomas Kellerer wrote:
| The Postgres JDBC driver is 100% Java and definitely does not rely on
| any external DLLs or libraries, it speaks the native PG protocol (AFAIK
| there is no such thing as a "Java interface"). So why shouldn't this be
| possible with Ruby as well?
Because Ruby doesn't really compare to Java in terms of infrastructure
and APIs?
Both Ruby and the database you want to speak to have to provide an API
to do that (JDBC is a Java API, and still needs the proper connectors to
actually talk to the database, similar to ODBC).
This is not want I meant. It's the driver that provides the JDBC API to the application. This is true for all 100% Java JDBC drivers. (e.g. the Oracle, SQL Server, MySQL).
All of them have to use the core functions available in the JDK. The JDK itself does not contain any implementation of the JDBC API (apart from the DriverManager maybe), so all those drivers basically use the standard Java IO and network classes to communicate with their backend (and of course their own classes that support the DBMS protocol)
I'm a complete newbie with Ruby, but from what I have seen, I would be very surprised if it wasn't possible to implement a pure Ruby implementation to communicate with a Postgres backend.
How much work that would be, is probably another question though.
Thomas