Current status of DB libraries in D

Yao G. yao.gomez at spam.gmail.com
Tue Oct 12 11:18:10 PDT 2010


On Tue, 12 Oct 2010 10:29:41 -0500, Gianluigi Rubino  
<gianluigi at grsoft.org> wrote:

> Sorry to bother you as probably this question has been asked 10k
> times. I searched a bit in the ML archives before posting my question,
> I hope to no upset anyone :-)
>
> But I currently am able to find only _outdated_ information about the
> current development of a good DB layer for D.
>
> 1) I can found good libraries for SQLite3
> 2) There is some support for MySQL
>
> All other database are somehow supported, but you need to use a
> different API for each different DB. There is no common effort to
> build an high-level API in a db-indipendent way. Actually there is
> one: http://github.com/aaronc/ddbi
>
> I found some information on:
> http://www.wikiservice.at/d/wiki.cgi?DatabaseBindings

Did you checked the DDBI project?

http://dsource.org/projects/ddbi

I don't know if it has been updated of lately, but it's purpose was to  
create a common D interface among several databases.


> Before diving in, I must say that the main source of confusion is: How
> to understand if a lib has been developed for D1 ? There is a quick
> way to see the difference (other than reading the documentation). It
> is not lazyness, but often I found only the sources and in the doc
> there is no mention about the language version (I can understand it,
> if it's been developed years ago, D2 was not born yet at the time of
> the writing).
> Any suggestion ?

Look for methods or functions or variables that manipulate string  
characters. If the type used is string, wstring or dstring, then it's  
almost guaranteed that is a D2 project. Conversely, if the type used is  
char[], wchar[] or dchar[], and there's no usage of the former types, then  
it's a D2 project.

Also. Check for imported modules, if you find modules from the Tango  
Project (tango.foo.bar, tango.baz.bar, etc), then it's a D1 project. Tango  
only works with D1.

>
> Best,
> Gianluigi


-- 
Yao G.


More information about the Digitalmars-d mailing list