Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: The Book Problem, Open Book Format proposal, Request for comments.

Author: Dann Corbit

Date: 18:12:20 03/03/06

Go up one level in this thread


On March 03, 2006 at 19:41:42, Mark Boylan wrote:

>A SQL solution for chess databases, engine user interfaces & book building
>programs would be ideal. There would be absolutely no need for any kind of
>hashing algorithm at that level because the database would handle it. A
>varchar(90) key (or whatever the maximum size of a fen is) is nothing for good
>database. In fact I've already started to design a SQL game/position database
>using fens (with a shorter surrogate key for relations) and I expect it to be
>very fast.
>
>But I see two problems.
>
>First is what database to use. I wouldn't want to use a database _server_ for a
>single user desktop application, but I guess you could. There are more than a
>few embedded databases for Java, and that's what I've cosen for my database
>application.
>
>But I wouldn't want any Java in my engine (just my preference). And using an
>embedded database (assuming that's the choice) kind of ties you to a language.
>I'm not sure what's available for other languages. I think there are xbase-like
>databases for C, but they aren't really SQL. In any case, the data files
>wouldn't be interchagable among the servers, embedded or otherwise.
>
>But, a book-building program could certainly export a file readable by any
>engine, regardless of language or platform. In the end, the engine will probably
>just hash the results of the query anyway, no?

SQL is langauge independent.  You can use whatever database engine you like.

Some possibilities for the SQL geeky:
DB/2 (not sure if there is a free version or not)
SQL*Server (there is a free limited version)
Oracle (there is a free 2GB limited version)
PostgreSQL (free)
Firebird (free)

Some possibilities for a canned version (come in C form and compile anywhere):
SQLite (free, public domain license):
http://www.sqlite.org/

For the 'object' crowd:
FastDB (free, berkeley license):
http://www.garret.ru/~knizhnik/fastdb.html

It does not have to be a relational database.  Foxpro or the like would work via
standards based connections like ODBC or OLEDB or .NET provider.

There are lots of other database systems as well.

I would use ODBC or JDBC or OLEDB or some other standards based connection.  If
you do that, then the database literally does not matter.

It would be easy to choose some stock format (like SQLite) and make a canned
version that you just bolt on and use.



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.