Question

Is it possible to have an embedded database as a file shared on a network disk and used simultaneously by multiple users (to both read and write)?

Slowness is not an issue, but no database software should have to be installed. Is Microsoft SQL Server Compact appropriate for such a purpose?

Was it helpful?

Solution

I found this page on the msdn which suggests that version 3.5 and above of MS SQL Server Compact should be o.k. in this scenario.

To support multiple applications that access the same database at the same time, SQL Server Compact 3.5 provides multiuser support. Multiuser support enables multiple users of a database to synchronize data without having to disconnect the database before they use merge replication or remote data access (RDA). For more information about multiuser synchronization, see Multiuser Access and RDA and Multiuser Access and Synchronization.

However I, personally, have no experience with this so could not say for sure if this will definitely work.

OTHER TIPS

Have you tried VistaDB? I believe it should meet your requirements.

SQLIte for .NET should work for you!

SQLite is a small C library that implements a self-contained, embeddable, zero-configuration SQL database engine. Features include:

  • Transactions are atomic, consistent, isolated, and durable (ACID) even after system crashes and power failures. Zero-configuration - no setup or administration needed.
  • Implements most of SQL92. (Features not supported)
  • A complete database is stored in a single disk file.
  • Database files can be freely shared between machines with different byte orders.
  • Supports databases up to 2 terabytes (241 bytes) in size.
  • Sizes of strings and BLOBs limited only by available memory.
  • Small code footprint: less than 30K lines of C code, less than 250KB code space (gcc on i486)
  • Faster than popular client/server database engines for most common operations.
  • Simple, easy to use API.
  • TCL bindings included. Bindings for many other languages available separately.
  • Well-commented source code with over 95% test coverage.
  • Self-contained: no external dependencies.
  • Sources are in the public domain. Use for any purpose.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top