Started working on a new project, for now called "libdrda".
I'll come up with a snazzier name later.
The basic premise is this: IBM a couple of years ago
submitted DRDA (Distributed Relational Database
Architecture) to the Open Group standards process.
Basically, what it is is a protocol similar in purpose to
TDS, SQL/Net, etc... that allows database clients to talk to
database servers. But DRDA goes a little further and
defines the ability to coordinate transactions across
heterogeneous servers which support DRDA natively or via a
gateway.
DRDA comes from the mainframe world and uses all kinds of
mainframe terms in the documentation...really confusing for
a unix guy. However, I've managed to plow through the
documentation and get my program exchanging supported
attributes with a IBM DB2 7.2 server (DB2 UDB supports DRDA
natively in addition to its private protocol).
So, now I have (or will have) something analogous to FreeTDS
for IBM DB2. I'll add an ODBC layer on top of it, so it
works with Perl, PHP, etc... The next step is to create a
DRDA gateway for FreeTDS so that a DRDA client can talk to
Sybase or Microsoft SQL Server.
But the real payoff comes from embedding DRDA support in all
the open source databases, Postgresql, MySQL, mSQL,
Interbase, etc....
Imagine that you could use a single database client to talk
to *any* database regardless of vendor. Standards are
wonderful things aren't they?
Released tarballs for FreeTDS 0.52 tonight too.