Choosing Between SQL Server Compact 3.5 and SQL Server 2005 Express Edition

Published: December 16, 2006
**
**

The SQL Server family offers two products suitable for local storage: Microsoft SQL Server Compact 3.5 and Microsoft SQL Server 2005 Express Edition. With the release of SQL Server Compact for desktop scenarios, Microsoft is positioning SQL Server Compact as the default local database. However, both editions are free to download and deploy. Choosing between the SQL Server Express and SQL Server Compact of SQL Server can be difficult because they seem to target the same scenarios. This paper helps developers understand the benefits of each edition and when each edition should be used for local data storage.

As you read this paper, it is important to remember that you need to choose the right tool for the right job. One size does not fit all. SQL Server is available in multiple editions because each is designed to fit a specific purpose. As you will learn from this paper, if you are looking to decide which database to use for your central data service, or the local database for your Windows Mobile device, your choices are easy, and you can read this paper for casual information.

Included in This Document:

Overview

Data Service and Embedded Database Engines

Selecting the Right Database

Local Data Feature Comparison

Deployment and Servicing

Programmability and Data Access Model

Securing Your Local Data

Conclusion

SQL Server Compact SQL Server Express Edition

Reasons to use

When you want essential relational database functionality in a compact footprint

Ideal for mobile and desktop applications, including occasionally-connected

Embeddable in applications

Free to download, develop, deploy, and redistribute

Ideal for small server deployments as well as desktop applications with more rich requirements such as full text search and powerful XML query processing.

When you want a seamless upgrade to SQL Workgroup, Standard, and Enterprise editions

Free to download, develop, deploy, and redistribute

Reasons not to use

When you want to run as a service

When you need a multi-user database server

When you need the full functionality of SQL Server

When the footprint and memory requirements need to be compact

When you want to run in process

When you want to target devices


Top of pageTop of page