Search code examples
databaseembedded-database

Embedded database for .NET application


I need to choose a database as a backend for a VB.NET application.

It must:

  • support XCOPY deployment
  • be accessible by a service and a desktop application at the same time
  • support SQL syntax and datatypes
  • be suitable for a web application (ASP.NET)

I was looking into Firebird (web application discouraged for embedded version?) and SQL CE 4

Any suggestions?


Solution

  • SQL CE 4 is probably a more natural fit for a .NET application and will have the greatest support in tooling such as EF4.

    Orcs Web (a well respected hoster) seem to think it's pretty good:

    4 Reasons Microsoft SQL Server CE is a Great Hosted Database Option

    One argument for going down the SQL CE 4 road is that if you need to upsize to full blown SQL Server then it's a bit of a no-brainer excercise.

    Another alternative is to use a plain old Access database the benefit of which is that you can load it into Access or pass the file around to others who have Access.

    Yet another alternative lightweight and portable database is SQLite. There's a driver for .NET which you can download from:

    System.Data.SQLite - An open source ADO.NET provider for the SQLite database engine