[comp.databases] summary "database engine with C interface"

bby@palladium.UUCP (Bob Mastors) (06/04/90)

This is a summary of replies mailed to me on the topic:
		database engine with C interface
My original request was:
>I am looking for a database engine with a C programming interface to it.
>...
>Briefly my requirements are:
>	a) Compact code size.  If it adds more than 100k to my program it
>	   is probably too big.
>	b) Source code available.  This is mostly a support issue.
>	c) No royalties for distributing it as part of a compiled program.
>	d) Initial cost is not an issue.
>	e) Works in a dos environment.
>	f) Must support variable length records.
>...

Thanks to all that replied.  I called the following companies
to get more information.

	Faircom
	314-445-6833

	Mix Software, Inc.
	800-333-0330
	
	Sequiter
	403-439-8171
---
Bob Mastors
Epoch Systems, Westboro MA (508) 836-4711 x317 (voice)
                           (508) 836-4884 (fax)
harvard!cfisun!palladium!mastors
linus!alliant!palladium!mastors

----------summary follows (slightly edited) -----------------

my experiences lies with the c-tree database manager. it's a very
comprehensive package written entirely in C. it's easily ported
between MS-DOS, UNIX, XENIX, and other systems that use C and comply
to the old "standard" k&r routines such as read(), write(), etc.
it's very efficient (the entire library in large model with msc
was about 45K) and rather quick, in addition to being very
customizable. one problem with it though is the way you define your
files; if you plan on running the database program on a variety of
hardware platforms, you must take care to define your files correctly
(memory offsets can often cause havok) for all such machines. it's
not too difficult, but it can cause heartaches if you are unaware
of the situation.

c-tree is produced by Faircom, comes with all source, and has no royalties
for use. the address of faircom is:

Faircom
2606 Johnson Drive
Columbia, MO 65203
(314) 445-6833
--------------------------

I use the C/Database Toolchest from Mix Software.  I have done two
applications for money with it.  The users were very have with the
resulting system.  I use a shareware window/menu/data-entry library, 
but Mix also sells one with source.  Mix also sells a C compiler.
I'm told the documentation is worth the price if someone is just
learning C.  I have only bought and used the C/Database Toolchest
and can not recommend from experience any of the other products.

 You get seven things in the C/Database Toolchest.

    - B+tree library
    - ISAM library
    - sample database program
    - additional utility programs
      e.g. convert Dbase files to ISAM file
    - source for all of it
    - documentation, 365 pages
    - free telephone support

It meets all six of your requirements.  The price is $29.95.  That
includes source!  You do have to pay a shipping charge, about $4.00.
I have only used it with Microsoft C in medium and large models.  A
friend of mine has Turbo C and he says it works well with it too.

Even at this low price, the documentation and free telephone support are
excellent.  I called for support.  I thought there was a bug.  The support
person was tactful in pointing out the bug that I had missed in my own
code.  I rate this stuff 5 stars.

   Mix Software, Inc.
   1132 Commerce Drive
   Richardson, TX 75081
--------------------------

Please consider Microsoft SQL Server.  This product is a version of
Sybase's SQL Server for OS/2-based 80[23]86-based machines.  It has
a client/server architecture, so you can run it on a single OS/2 machine
and communicate with it via DOS-based PC clones over a network.  
SQL Server may be overkill for your needs, as it is designed for 
department-level database transaction-processing; however, if you
anticipate growth in your application (several concurrent users,
several 100 MB of data) this product offers lots of growth overhead.
The product was independently evaluated in the March 5, 1990 issue
of _Info_World_.
--------------------------

	two packages that I am familiar with are:
		a.  C/Database Toolchest by MIX Software 1-800-333-0330
	
		b.  Code Base by Sequiter 1-403-439-8171

I have worked with (a) cost is $20 bucks, and worth it.  Source is
about $30 bucks extra.  (b) is supposedly dbase, fox compatible and runs
on more platforms, it cost ? $300 ? AND it runs on UNIX and OS/2.  Which
for me makes it worth looking at again.

Both these packages requires 'C'.
--------------------------

I am playing around with Ctree/Rtree/Dtree from Faircom. It may add too
much code size to your program, though.
--------------------------

Your best bet would be to get a public domain database,
or to develop your own relational database library of 
routines.

Because you want the source code to the database back end, you 
rule out all of the vendors (Oracle, Ingress, Sybase, Informix)

What you are looking for is a front end / back end split.
Personally, I would reccomend Informix, since it is available 
as runtime only. (We, a friend and I, do our side work with it).

Yes, you do have to buy the runtime, but as a vendor, you get it
at a discount, as is the runtime is fairly cheap. You really don't
need the source code since you are actually developing the front end
only. You don't have to worry about back end maintenance. (Unless you
want to play with C-ISAM :-) 
--------------------------

Borland has a C and a C++ interface to
its Paradox database.  You might inquire
of them...
--------------------------

database engine with C interface - Ah ! someone wants what I was
been after for a while. What about C/Index (author unknown) or
the C\database\toolchest by Mix software. C/Index is more powerful.
They both use variable lengthe records although C/Index allows
binary zero to be stored in a field (I'm pretty sure) but C\database\
toolchest uses 0 to terminate a field. They do, however provide functions
to convert binary integers, floats etc., to binaries with no zeroes except
at the end. I have bought C\Database\Toolchest for home and a friend bought
C\Index.  I haven't actually used C/Index but he's told me about it.
Weigh the features of each and look at the cost. I think the
term "you get what you pay for" applies here.