문제

I'm writing a new .Net 3.5 Winforms single user application and I'm not sure which database I should use. The database consists of about 30 tables and maximum rows in a table will not exceed 50,000.
The database should be password protected so the client user cannot view the structure or modify data manually.
I'd rather prevent further installation on the client machine aside my application's setup. For example I prefer not to use SQL Server Express Edition since it should be installed the client machine. But, that's not a priority.
As far as I know, My choices are SQL Server Compact Edition, SQLite and Microsoft Access. I think using SQL Server Compact edition is the best choice But I'm not sure it would be a good idea since it's written to be used in database apps that will run on mobile devices. But I could be wrong.
I have heard about ODBMS but I have no experience using them and have no idea about performance, flexibility etc.

도움이 되었습니까?

해결책

Use SQLite. It integrates really well with .NET, requires no installation or maintenance, runs in process with your app, and is very very fast. Supports official SQL syntax and custom functions written in .NET.

Official site:

http://sqlite.org/

Best .NET wrapper:

http://sqlite.phxsoftware.com/

It can be used with Entity Framework and NHibernate but not LLBLGen Pro.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top