RE: A sequence, by any other name

new topic     » goto parent     » topic index » view thread      » older message » newer message

> From: Jonas Temple [mailto:jktemple at yhti.net]

> Maybe the solution here is to beg Matt to change the EUSQL to 
> not only 
> store the field name but the type as well.  That would make my life 
> easier.  Just a thought.

That's one thing I've been considering doing, and it'll probably happen
[fairly] soon.  I've been putting in a more detailed API, that sort of gives
you a more flexible way to manipulate records (other than simply with SQL
statements), that's building up to being able to index and verify records.
In the next release, it will be recommended that programs using EuSQL no
longer make any calls to database.e.  You won't need to worry about record
numbers--just keys.

One thing I'll have to determine is what datatypes to support.  I suppose:

integer (standard Eu definition)
atom (standard Eu definition)
varchar (string)
sequence (standard Eu definition)
binary (single depth sequence of atoms)

I'm not sure what exactly to do about the sequence datatype, since there's
no real parallel in other DBMS's.  Probably, it would treat those as invalid
fields for non-Eu processes (I think someone wanted to access EDS through
Delphi), while an Eu-based process could handle them just fine.  There'd be
several ways to get around this, though, including creation of subfields or
compressing a sequence before saving it to the record, and decompressing in
whatever way made sense.

I'll probably handle this (API-wise) along the lines of ODBC--maybe even
write an ODBC driver for EDS!--where you can get descriptions of the various
fields, including names and datatypes.

Also, I've just about got the ODBC code set up to return less than full
recordsets.  It changes the way you interface with the lib, but not too
dramatically.

Matt Lewis

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu