DDBI gets MSSQL/Sybase support

kris fu at bar.org
Sat Jan 13 22:51:16 PST 2007


Brad Anderson wrote:
> kris wrote:
> 
>>Brad Anderson wrote:
>>
>>>http://www.dsource.org/projects/ddbi/wiki/FreeTDSSubproject
>>>http://www.dsource.org/projects/ddbi/changeset/44
>>>
>>>example
>>>---------
>>>
>>># import dbi.mssql.MssqlDatabase;
>>># import dbi.Row;
>>># import std.stdio;
>>>#
>>># void main() {
>>>#
>>>#   MssqlDatabase db = new MssqlDatabase();
>>>#   db.connect("server 1433","username","password");
>>>#
>>>#   Row[] rows = db.queryFetchAll("USE dbname; SELECT * FROM test;");
>>>#
>>>#   foreach (Row row; rows) {
>>>#     writefln("%-10s %3s %-20s %7s %11s %11s ",
>>>#              row["testStr"],
>>>#              row["testInt"],
>>>#              row["anotherStr"],
>>>#              row["flt"],
>>>#              row["smmoney"],
>>>#              row["smdate"]);
>>>#   }
>>>#   db.close();
>>>#
>>># }
>>>
>>>changelog
>>>---------
>>># Preliminary FreeTDS support (MSSQL, Sybase)
>>>#
>>>#     * Only a few types have been tested
>>>#           o varchar, nvarchar
>>>#           o int
>>>#           o float
>>>#           o datetime, smalldatetime
>>>#           o money, smallmoney
>>>#     * As with all existing dbi's, this one only returns strings
>>>#           o so dates come at you like yyyy-mm-dd hh:nn:ss
>>>#           o there's a rounding error in money,smallmoney - can only
>>>get 2
>>>#             decimal places, should be able to get 4
>>>#     * No error messages are being presented to the user yet.
>>>#           o MssqlError.d needs to be coded
>>>#           o CS_SERVERMSG and src/ctlib/unittests/common.c look
>>>promising
>>>#             here
>>>#     * Bindings (thanks to bcd.gen) were for FreeTDS 0.64RC2, but
>>>should work
>>>#       across a wide range of versions
>>>#     * Within FreeTDS, the ctlib was used
>>>#
>>># only tested on Linux - not Windows yet - give it a whirl and report
>>>back
>>>
>>>Cheers,
>>>BA
>>
>>
>>Nice work, Brad ... Any possibility of getting more data-types than
>>char[] exposed?
> 
> 
> Yes, it's being set up for the new Row object - I'm working with h3r3tic and
> void[]s to enable this.
> 
> BA

freakin awesome :p



More information about the Digitalmars-d-announce mailing list