[freetds] ODBC configuration dialog on Windows

Steve Kirkendall skirkendall at dsl-only.net
Mon May 3 12:41:36 EDT 2004

"Rogers, Tom" <tom.rogers at ccur.com> wrote on Monday, May 03, 2004:
> Do I understand that you "ported" (created, reverse engineered) your own
> version of SQL Server to run on Linux?

Sort of.

> 1. Why?  Seriously.  Why not use an existing Linux database that has a
> supported ODBC driver (assuming there are some).

The purpose is to allow Windows workstations to run Crystal Reports against
data that is stored on a Linux server.  The application on the Linux server 
uses a proprietary database library (an old copy of C-tree from a company
called Faircom).  Faircom does offer an SQL front-end that uses their
library, but that front-end makes some assumptions about file formats that
aren't true for our application; the retrofit would be extremely hard.
(There's roughly half a million lines of code, being maintained by just two
people.  Making sweeping changes to that code is not an option!)

Also, when we chose the C-tree library, one of the reasons for doing so
was that its license allowed applications to be distributed without any
royalty fee.  Faircom's SQL server has a large royalty fee.

> 2. How function-filled are you going to make your database (Views, Stored
> Procedures, Transactions, etc?)

It only supports reporting.  That means basically the SELECT command.
Reports should never modify data, so it won't support ADD, DROP, INSERT,
or DELETE.  It also won't support transactions, triggers, or stored
procedures -- those features aren't needed if you can't modify anything.

I'm hoping I can avoid views too, though that remains to be seen.
(No pun intended.)

> 3. What, if anything, did you use as a codebase?

Nothing, I started from scratch.

Actually, the SQL interpreter is turning out to be the easy part of this
project.  I had that working (reading SQL from stdin, and writing tables
to stdout) in about a week.  It still isn't complete, but once I got as
far as dumping individual tables, I figured I should try to get the
networking end of it working, so I stopped work on the SQL interpreter
about two weeks ago.  I plan to resume work on it today.

The hard part has been figuring out TDS.  The data packets and tokens are
documented individually, without any clues as to how they fit together.
Its like knowing the vocabulary but not the syntax.  So I fumble around,
and about 40% of the time I figure it out.  Another 40% of the time, the
people on this mailing list have supplied the answer.  The other 20% of
the time I give up and try something else.

Steve Kirkendall    |A:It is confusing, since people don't read that way
kirkenda at cs.pdx.edu |Q:Why is top-posting bad?
                    |A:It is adding comments to the top of a message
                    |Q:What is top-posting?

More information about the FreeTDS mailing list