2

I've used databases in asp.net but I now have a situation where I need the power/flexibility of a database but I need to ship it with my application. I need to access my tables and create new ones etc but without requiring the user to have any kind of database software installed. I.e. I want it to be self-sufficient. What are my options? Of course standard serialization could be used but I want to use an actual database technology for cases where the records are in the tens of thousands.

Thanks for any input!

4 Answers 4

3

You're probably looking at some sort of embedded / in-process database. Microsoft espouses their lite version of SQL Server. My personal recommendation is to look at SQLite. SQLite leaves you with a single DLL to run the database and one file for the actual db data.

The System.Data.SQLite project is an awesome community contribution to bridge the gap between SQLite and what .NET developers have come to expect with commerical database integration. With this project you get a driver with full ADO.NET 2.0 support, ADO.NET Entity Framework support and Visual Studio database design time integration.

Give it a look. You'll be up and running in no time and I'm sure you'll be impressed.

Sign up to request clarification or add additional context in comments.

1 Comment

+1 for SQLite and the System.Data.SQLite project. They are very good!
2

There is a good series of articles regarding SQLLite here:

http://www.csharphacker.com/technicalblog/index.php/2009/06/16/sqlite-for-c-part-1-am-i-allowed-to-use-it/

the remaining 6 articles are posted at the bottom of this page

Comments

1

You could use Sql Express or Sql Compact if the database is user specific. If the database is shared between users you can still use Sql Express, but then you're stuck deploying a separate server installer.

Comments

1

Sounds like you want an in-process database. Look at SQLLite or MS SQLCE.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.