Which database should I use for a small dotnet application?
I am developing a small application with ASP and C # in .NET and I want to have a small local database next to it where I can save and retrieve records either by SQL queries or Linq queries. I don't need anything powerful, just use something instead of storing records in TXT files.
So what do you suggest?
source to share
I would go with either SQLLite or XML as you are talking a very small database.
And with xml you can use Linq to xml
source to share
It is best to use the SQL Express version as it is provided free of charge. First try using .NET root code for rapid application development.
The application considers very little using SQL express anyway, as you can write neat and clean stored procedures and play with other database objects.
See http://www.microsoft.com/sqlserver/en/us/editions/express.aspx for details .
source to share
I recommend that you use SQL Server Express because
- It's free and easy to install.
- You can easily use either Entity Framework or LINQ TO SQL to manipulate your data.
- It can easily communicate with your DB company (if it is also SQL Server), for example, one fine day in the future, you might need to test replication.
source to share
In your case, I would consider the following:
- XML if you have no more than a couple of hundred records in all tables. And @Ali mentioned LINQ to XML already , which would be handy.
- VistaDB because it is 100% managed code and only requires one small assembly to be deployed for 32 and 64 bit.
- SQL CE , just because it is the most popular. Of course it supports LINQ and concurrency.
- SQLite as an alternative to SQL CE :)
Do not go to SQL Express if it is not already provided by your host. This increases the complexity of distributing / installing your solution.
source to share