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.