SQL Server: Express or Commercial
The Express edition isn't limited by number of users. What's more important is the potential size of your DB. SQL Express limits the DB size to 10GB (I think). So if you think your DB will grow bigger than this, Express won't be the right choice. Also, I believe Express is limited to 1GB of RAM (which isn't much).
Sql Server 2008 Express Edition Licensing
No, no licensing problems at all - SQL Server 2008 Express is FREE to use, to deploy, to install - and can be used for any kind of hobbyist or commercial application - no restrictions.
Using SQL Express edition commercially
To redistribute SQL Server Express, you need to obtain redistribution rights from Microsoft. And yes, you can use it for commercial use (see, for example, this FAQ).
What are the Visual Studio Express Editions?
SQL Server 2008 Express and SQL Server Compact Edition – A powerful and easy-to-use set of databases to complement each Express Edition
Can I use Express Editions for commercial use?
Yes, there are no licensing restrictions for applications built using Visual Studio Express Editions.
Licensing of LocalDB on a small commercial product
I suggest you use the smallest edition of SQL Server Express instead, as LocalDB does not allow remote (network) connections. Both "SQL Server Express" and "SQL Server Express LocalDB" are free to download and distribute.
Experience with SQLExpress for a multi-user commercial application?
A deployment project from Visual Studio allows you to install a SQL Server Express instance with ease.
We have the same kind of scenario for our applications and it means you do need separate installations for the client and server.
Our server installation deals with either installing a new SQL Server or upgrading the schema of an existing installation if necessary. The client installation simply packages up the files required by the client. You have to consider the scenario of upgrading the database schema and ensuring the clients have the updated client version which works against the new schema. We achieve this in a simple way by:
Storing a version id in the database e.g. 1.0.1
Updating the AssemblyInfo.cs of the client application and ensuring the assembly version matches the version stored in the database. If it doesn't it prompts the user to install the new version.
For the best possible user experience you would like to be able to install a new server version and for all the clients to auto update. We have a method for doing this and I can give you more details if required.
Related Topics
Rodbc SQLquery() Returns Varchar(255) When It Should Return Varchar(Max)
Stored Procedure Exec VS Sp_Executesql Difference
Adding 'Go' Statements to Entity Framework Migrations
Pivot Without Aggregate Function in Mssql 2008 R2
Issue When Comparing Result of To_Char(Mydate, 'Day') to a String
Oracle SQL: Fill in Missing Dates
How to Simulate Deadlock on SQL Server
Select from Table by Knowing Only Date Without Time (Oracle)
Using If Else in SQL Select Statement
How to Read Multiple Result Sets Returned from a SQL Server Stored Procedure in R
How to Use Free SQLserver Express in Commercial App
Connecting to Oracle Database Using SQL Server Integration Services
Diagnosing an Oledb Exception When Quering Excel 2010
How to Bulk Insert Only New Rows in Postresql
Truncate Timestamp to Arbitrary Intervals