[Q] How suitable is Squeak for Database work

Cees de Groot cg at cdegroot.com
Sat Jan 4 01:55:49 UTC 2003

Avi Bryant <avi at beta4.com> said:
>As far as I'm concerned, yes, though perl folks may well disagree.  But
>ODBC is only really a viable solution on Windows - I'd rather something
>a little more portable, probably wrapping the existing socket-based MySQL
>and PostgreSQL drivers to start.
Having spent a number of years writing ODBC drivers for Unix, Linux,
MacOS and VMS (and of course Win16/32), I have to disagree about the
portability bit (ODBC started out as the X/Open SQL Access Group Call
Level Interface before being embraced-and-extended by Micrsoft) ;-)

An ex-colleague of mine still maintains the iODBC stuff (or whatever
it's called) for Unix, which works fine and might be a way to quickly
get Squeak able to access a whole slew of databases on Unix (certainly
the important ones: Oracle, Sybase, Informix, SQL Server, ...). I don't
know what the MacOS status of ODBC is (Apple used to ship ODBC with MacOS,
and I used to port our generic client to it, but that was in '93/'94).

ODBC (SAG/CLI) is not a bad interface. DB/2's native interface is almost the
same, and it has reasonable abstractions for the various entities that play a
role. Also, as JDBC showed, it's not too hard to port it to OO - most of the
ODBC calls have a typed handle to a resource as their first argument, which
maps nicely to a concept of 'this'. You can get a long way by implementing
only an interface to ODBC 2.0 or 2.5 (they really bloated it since then
because the requirements of ADO etcetera), and it is more a matter of a bit of
time (because of the number of calls involved) than anything else. 

Cees de Groot               http://www.cdegroot.com     <cg at cdegroot.com>
GnuPG 1024D/E0989E8B 0016 F679 F38D 5946 4ECD  1986 F303 937F E098 9E8B
Cogito ergo evigilo

More information about the Squeak-dev mailing list