Andru's WebLog

//Comments about technology and software architecture

May 2005 - Posts

Published SharpHsql

I have just published the new version of SharpHsql on GotDotNet.

This is a minor release, and the changes are:

*- Correct reading of binary (byte[]) columns.
*- Added support for OBJECT data types. All stored objects this way MUST be serializable. The database engine does all the dirty work for you (see ProviderTest for sample code). Please note that this is not supported by the PocketPC version.
*- Implemented more SHOW commands:
     - SHOW ALIAS: list all functions defined in the database.
     - SHOW PARAMETERS xxx: shows the parameters received and returned by the "xxx" alias function.
*- Removed the log4net dependency from the PocketPC version of SharpHsql.
*- Some other minor issues.


Andrés G Vettori
Leader of the C# Community of the
Microsoft Users Group Argentina

Posted: May 19 2005, 04:10 PM by andresv | with 2 comment(s)
Filed under:
News about Retina.NET

Well, almost five months passed since the last Retina.NET release ( and I can't believe that we are close to the middle of this 2005 year, full of spectations.

I have been working hard since that last release to improve things in Retina.NET, and I must say that we are very close to a new release.

Saddly, I am almost alone in this task as I haven't received much support or help from the community (with a few exceptions, of course), despite the good comments received about the capabilities, ease of use and "feeling" about Retina.NET. I also have dedicated some time to my other pet project SharpHsql and that doesn't help me to get things done faster.

Well, even that I managed to advance steadly in the development of the next Retina.NET version, and the good news are that I am getting pretty close to finish it. This version includes some very interesting new features such as:

  • Support for full inheritance.
  • Support for Lazy load and Delay load of related entities and child collections.
  • Generation of Identity values on the database.
  • A new Criteria object model with support for string criteria parsing that is expression safe.
  • Support for new DataTypes.
  • Better support for NullableTypes and SqlTypes.
  • Some more...

Well, I will be discussing some of those points in future posts, and looking forward to get the next version of Retina.NET out of the door as fast I can.

Best regards,

Andrés G Vettori
Leader of the C# Community of the
Microsoft Users Group Argentina

Posted: May 17 2005, 07:14 PM by andresv | with 3 comment(s)
Filed under: ,

My beloved readers, I have just published on the SharpHsql GotDotNet workspace the latest version of this nice project.

Feel free to download it's binaries/source and play with it. I know that there are a few of you that are not playing with SharpHsql but taking it very seriously, so I'm glad to present this version with more fixed bugs you reported.

Keep the good work!

Andrés G Vettori
Leader of the C# Community
of the Microsoft Users Group Argentina

Posted: May 16 2005, 02:00 PM by andresv | with no comments
Filed under:
Nice SharpHsql / Access Performance comparison article

Well, it's very nice to see people that cares to test and write about some little project I come to grow.

I feel that the community is starting to pay some attention to SharpHsql, as indicates the traffic of the GotDotNet site and the message board.

The article was written by Martin, and is the first in a series of articles he will be writing that compare the performance of SharpHsql and Access. This one tackles bulk inserting, and you will probably be very surprised by the results!

Well, I hope to see many more articles like this!

Enjoy and I wait for your comments.



Posted: May 14 2005, 12:35 AM by andresv | with no comments
Filed under:
Nerd... nerdy... nerdier!

I am nerdier than 94% of all people. Are you nerdier? Click here to find out!

That says it all.

SharpHsql new version

For the people that reads this and doesn't know what SharpHsql is, here comes the short explanation: it's a port to .NET (C#) of the well know embebdded Java database engine known as HSQLDB. This port includes an ADO.NET provider with full capabilities and Windows CE / PocketPC version.

Well, in this version I have almost put inside-out every class in the project. All classes, methods, variables, etc are now using the MS recommended naming conventions. No more Java like classes and methods.

Also I have made a huge refactor of all classes and added some features:

  • Added support for variables:
            DECLARE @MyVar INT; SET @MyVar = 25; SELECT @MyVar; 
  • Added support for OUTPUT parameters in SharpHsqlCommand
           (only for ExecuteNonQuery by now). 
  • Identity columns starts it's value on 1, not zero.
  • Creation of tables now defaults to CACHED if not specified.
  • Date/Time is now stored correctly (with milliseconds). 
  • Fixed all other reported bugs (and some more). 
  • Changed visibility of almost everything. 
  • Changed those getXXX and setXXX methods to properties. 
  • Constants variables were changed to enums. 
  • Implemented IDisposable where previously existed a "finalize" method. 
  • Changed the name of some methods & properties to something more meaningful. 
  • All classes marked as Sealed when inheritance is not needed/desired. 
  • Added some more logging. 
  • Added every XML comment to all public classes, enums, etc. 
  • Generated a help file with NDoc. 
  • Run FxCop. Only 256 violations are left (some more work to do).

And some more....  well, this is a very nice release if you let me say it.

You can download the source and binaries from GotDotNet.

Please play with the bits and let me know what you think!

I need some collaboration for documentation and UNIT TESTING. Anybody care to port the HSQLDB tests?

That's all for now, best regards.

Andrés G Vettori
Leader of the C# Community of the
Microsoft Users Group Argentina

Posted: May 12 2005, 01:01 AM by andresv | with 1 comment(s)
Filed under:
Retina.NET News

In the next few days I will be uploading the latest version of Retina.NET binaries and source.

This version includes some major features and changes, and some of them are:

*- Support for inheritance, in it's three known forms of persistence.
*- Support for lazy load of related entities and collections.
*- Support for Identity and RowId columns with values generated in the DB.

With this new additions I think that Retina.NET can be declared "feature complete", and then entered now BETA status. This means that i will focus now in getting a bug free/reliable/scalable/fast version including the features we already have at this point.

New features (and there are many of those) will be included in the new codebase for the next version of Retina.NET (version number not known yet).

I'm playing with .NET 2.0 two since Beta1, but there are too many things in the air to begin to work seriously. The new Beta2 of the .NET Framework broke too many things, and i'm waiting for Beta2 versions of the libraries used by Retina.NET (such as NullableTypes, CastleProxy, Log4Net, etc).

If you have comments about some feature or bug you want included/fixed for this version, speak now! All comments are very welcome.

Best regards, and hope hearing from you soon!

Visit the Retina.NET site at GotDotNet.

Andrés Vettori

Posted: May 02 2005, 09:16 PM by andresv | with 2 comment(s)
Filed under:
More Posts