I am trying to use SQL Server Compact Edition 3.5 as a database backend for a sales application. There would be 3-4 installations of a Windows Forms application which would all (via LINQ2SQL) read from and write to one .sdf file located on a network share.
My (pretty inextensive) testing has shown that this could be viable. Documentation states that SQL Server CE supports up to 256 connections. Does SQL Server CE even lock its rows? Are there other concurrency issues that I should worry about?
Bottom line is, has anyone used SQL Server CE successfully with multiple applications connecting to same database?
Should I spare myself future headaches and go with SQL Server Express?
MS recommends (from Darian Miller’s comparison guide):
the runtime supports concurrency on the same machine, not sure about multiple machines accessing the file. in the case the file is stored over a network share, that may not fit the optimal performance profile for ce. i would say go with EE, it’s a snap to install with a simple msi.
SSCE Concurrency:
http://technet.microsoft.com/en-us/library/bb380177%28SQL.90%29.aspx