LlblGen + Nhibernate + Access 2010

Posts   
 
    
sh856531
User
Posts: 8
Joined: 12-Dec-2010
# Posted on: 12-Dec-2010 18:03:36   

Hi Guys,

I'm currently investigating various options for using ORM frameworks with MS Access.

Given that the EF doesn't work with Access the next option on my list is Nhibernate.

As I understand it, NHibernate can work with MS Access - its just a matter of creating the correct classes and mapping files (please feel free to correct my if I'm wrong here - I'm as new to NHibernate as I am to llblgen).

My problem is - coming from an EF 4.0 background, I am very much of the view that you should be able to create all the class files and mapping files required automaitcally by reverse engineering the database. As far as I can tell NHibernate doesn't have a tool to do this natively (which seems crazy to me) but apparently doing this is possible using llblgen.

Unfortunately although llblgen can do this for various databases (SQL Server/Oracle et al), it doesn't seem to be possible to reverse engineer access databases. Or at least if it can, it can't create the class files and mappings, which kind of defeats the purpose.

Can anyone tell me if it is possible to get Access/NHibernate/Llblgen to work well together or am I barking up the wrong tree?

I've been playing with llblgen and it does seem to be able to read the access file and reverse engineer entities from it. It just doesn't seem to be able to generate the basic class files and mappings.

Many thanks to anyone who can advise on any options for getting this to work!

Best Regards

S

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39898
Joined: 17-Aug-2003
# Posted on: 12-Dec-2010 19:06:25   

We didn't include support for MS Access for NHibernate because the dialect for MS Access isn't in the vanilla NHibernate download (it's in the contrib library) and it's rather inferior to the rest of the dialects. To my knowledge this hasn't changed in NH3, please correct me if I'm wrong.

Our own runtime framework supports MS access though. If you haven't decided whether you would use ms access or another database, you could have a look at firebird. It's free and can also be used as an embedded (just the db file and a dll) database, and we support nhibernate on firebird.

Frans Bouma | Lead developer LLBLGen Pro
sh856531
User
Posts: 8
Joined: 12-Dec-2010
# Posted on: 12-Dec-2010 21:13:53   

Otis wrote:

We didn't include support for MS Access for NHibernate because the dialect for MS Access isn't in the vanilla NHibernate download (it's in the contrib library) and it's rather inferior to the rest of the dialects. To my knowledge this hasn't changed in NH3, please correct me if I'm wrong.

Our own runtime framework supports MS access though. If you haven't decided whether you would use ms access or another database, you could have a look at firebird. It's free and can also be used as an embedded (just the db file and a dll) database, and we support nhibernate on firebird.

Hi Otis,

Thanks for that.

I really wish I could use Firebird or ideall SQL Server, but unfortunately I'm stuck using this Access bollocks for historical (and political) reasons.

When you say that the dialect for MS Access is inferior - are you aware of what the limitations are exactly? Are the limitations simply due to the fact that Access is piss poor, or is it that the dialect isn't fully implemented/developed?

Many thanks for your help

S

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39898
Joined: 17-Aug-2003
# Posted on: 13-Dec-2010 14:46:32   

sh856531 wrote:

Otis wrote:

We didn't include support for MS Access for NHibernate because the dialect for MS Access isn't in the vanilla NHibernate download (it's in the contrib library) and it's rather inferior to the rest of the dialects. To my knowledge this hasn't changed in NH3, please correct me if I'm wrong.

Our own runtime framework supports MS access though. If you haven't decided whether you would use ms access or another database, you could have a look at firebird. It's free and can also be used as an embedded (just the db file and a dll) database, and we support nhibernate on firebird.

Hi Otis,

Thanks for that.

I really wish I could use Firebird or ideall SQL Server, but unfortunately I'm stuck using this Access bollocks for historical (and political) reasons.

When you say that the dialect for MS Access is inferior - are you aware of what the limitations are exactly? Are the limitations simply due to the fact that Access is piss poor, or is it that the dialect isn't fully implemented/developed?

The dialect isn't fully developed, at least that was our impression. MS Access by itself is OK, it's the dialect which is not 100%.

Frans Bouma | Lead developer LLBLGen Pro
sh856531
User
Posts: 8
Joined: 12-Dec-2010
# Posted on: 13-Dec-2010 19:07:06   

Otis wrote:

sh856531 wrote:

Otis wrote:

We didn't include support for MS Access for NHibernate because the dialect for MS Access isn't in the vanilla NHibernate download (it's in the contrib library) and it's rather inferior to the rest of the dialects. To my knowledge this hasn't changed in NH3, please correct me if I'm wrong.

Our own runtime framework supports MS access though. If you haven't decided whether you would use ms access or another database, you could have a look at firebird. It's free and can also be used as an embedded (just the db file and a dll) database, and we support nhibernate on firebird.

Hi Otis,

Thanks for that.

I really wish I could use Firebird or ideall SQL Server, but unfortunately I'm stuck using this Access bollocks for historical (and political) reasons.

When you say that the dialect for MS Access is inferior - are you aware of what the limitations are exactly? Are the limitations simply due to the fact that Access is piss poor, or is it that the dialect isn't fully implemented/developed?

The dialect isn't fully developed, at least that was our impression. MS Access by itself is OK, it's the dialect which is not 100%.

OK - thanks for the heads up

I'm going to try and push my colleagues towards SQL Server Compact or potentially Express edition but they are currently obsessed with the fact that the users can zip up and email access databases to our technical support department.

If I am successful I'll definately be stopping by for a good look at llblgen

Thanks again for your help

Best Regards

S

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39898
Joined: 17-Aug-2003
# Posted on: 14-Dec-2010 09:26:23   

SQL CE Desktop can be zipped and send as well, it's just a file simple_smile

Frans Bouma | Lead developer LLBLGen Pro