SQL Server Compact

Last updated

Microsoft SQL Server Compact (SQL CE) is a discontinued relational database produced by Microsoft for applications that run on mobile devices and desktops. Prior to the introduction of the desktop platform, it was known as SQL Server for Windows CE and SQL Server Mobile Edition.

Contents

It includes both 32-bit and 64-bit native support. [1] SQL CE targets occasionally connected applications and applications with an embedded database. [2] It is free to download and redistribute. [2] An ODBC driver for SQL CE does not exist, nor is one planned. Native applications may use SQL CE via OLE DB.

The latest, and last, release is the SQL Server Compact 4.0. [1] In February 2013 SQL Server Compact Edition had been deprecated; no new versions or updates are planned, although Microsoft continued to support the product until July 2021. [3]

Overview

SQL Server Compact shares a common API with the other Microsoft SQL Server editions. [4] It also includes ADO.NET providers for data access using ADO.NET APIs, and built-in synchronization capabilities, [2] as well as support for LINQ and Entity Framework. Future releases will unify the synchronization capabilities with Microsoft Synchronization Services.[ needs update ] [5] Unlike other editions of Microsoft SQL Server, SQL CE runs in-process [5] with the application which is hosting it. It has a disk footprint of less than 2 MB and a memory footprint of approximately 5 MB. [2] SQL CE is optimized for an architecture where all applications share the same memory pool. [6] Windows Store apps for Windows 8 cannot use SQL Server Compact edition, or any other edition of SQL Server. [7]

Versions
Official NameCommon NameRelease dateSupport date
  • SQL Server 2000 Windows CE Edition
  • SQL Server CE 1.0
SQL CE 1.02000-10-26 [8]
  • SQL Server 2000 Windows CE Edition 1.1
  • SQL Server CE 1.1
SQL CE 1.12001-03-21 [9]
  • SQL Server 2000 Windows CE Edition 2.0
  • SQL Server CE 2.0
SQL CE 2.02002-09-16 [10]
SQL Server 2005 Mobile EditionSQL CE 3.02006-01-14
SQL Server 2005 Compact EditionSQL CE 3.12007-02-19Old version, no longer maintained: 2016-04-12 [11]
SQL Server Compact 3.5SQL CE 3.52008-02-19Old version, no longer maintained: 2018-04-10 [12]
SQL Server Compact 4.0SQL CE 4.02011-04-13Old version, no longer maintained: 2021-07-13 [3]
Legend:
Old version
Older version, still maintained
Latest version
Latest preview version
Future release

Support

SQL CE databases can support ACID-compliance, but do not meet the durability requirement by default because AutoFlush buffers changes in memory (including enlisted ambient transactions and explicit SQL CE transactions that do not override the Commit() call with an CommitMode.Immediate value). Therefore, committed transaction changes can be lost. To meet the durability requirement the commit call on the transaction must specify the immediate flag. [13] Like Microsoft SQL Server, SQL CE supports transactions, referential integrity constraints, locking as well as multiple connections to the database store. [4] However, nested transactions are not supported, even though parallel transactions (on different tables) are. [14] The current release does not support stored procedures [4] or native XML data type either. [5] It uses a subset of T-SQL [2] for querying and due to lack of XML support, XQuery is not supported either. [5] Queries are processed by an optimizing query processor. [15] SQL CE databases also support indexing, as well as support remote data replication (local caching of data in remote databases) and merge replication (bidirectional synchronization with master databases). [16]

SQL CE databases can be created and managed from Microsoft Visual Studio and some older versions of SQL Server Management Studio as well. [15]

File format

SQL Server Compact
Filename extension
.sdf
Developed by Microsoft
Type of format Relational database

SQL CE databases reside in a single .sdf file, [17] which can be up to 4 GB in size. [4] The .sdf file can be encrypted with 128-bit encryption for data security. [17] SQL CE runtime mediates concurrent multi-user access to the .sdf file. The .sdf file can simply be copied to the destination system for deployment, or be deployed through ClickOnce. SQL CE runtime has support for DataDirectories. [6] Applications using an SQL CE database need not specify the entire path to an .sdf file in the ADO.NET connection string, rather it can be specified as |DataDirectory|\<database_name>.sdf, defining the data directory (where the .sdf database file resides) being defined in the assembly manifest for the application.[ citation needed ]

SQL Server Management Studio 2005 can read and modify CE 3.0 and 3.1 database files (with the latest service pack), but SQL Server Management Studio 2008 (or later) is required to read version 3.5 files. Microsoft Visual Studio Express 2008 SP1 can create, modify, and query CE 3.5 SP1 database files. SQL Server Management Studio cannot read CE 4.0 files. Visual Studio 2010 SP1 can handle CE 4.0 database files.[ citation needed ]

The .sdf ("Sqlce Database File") naming convention is optional, and any extension can be used.[ citation needed ]

Setting a password for the database file is optional. The database can be compressed and repaired with the option of the compacted/repaired database to be placed into a new database file.[ citation needed ]

Deprecation

In February 2013, Microsoft announced that SQL Server Compact Edition had been deprecated. [18]

Although no new versions or updates are planned, Microsoft will continue to support SQL Compact through their standard lifecycle support policy. Extended support for SQL Server Compact 4.0 ended on July 13, 2021. [19]

See also

Related Research Articles

<span class="mw-page-title-main">Microsoft Access</span> Database manager part of the Microsoft 365 package

Microsoft Access is a database management system (DBMS) from Microsoft that combines the relational Access Database Engine (ACE) with a graphical user interface and software-development tools. It is a member of the Microsoft 365 suite of applications, included in the Professional and higher editions or sold separately.

In computing, Open Database Connectivity (ODBC) is a standard application programming interface (API) for accessing database management systems (DBMS). The designers of ODBC aimed to make it independent of database systems and operating systems. An application written using ODBC can be ported to other platforms, both on the client and server side, with few changes to the data access code.

WinFS was the code name for a canceled data storage and management system project based on relational databases, developed by Microsoft and first demonstrated in 2003. It was intended as an advanced storage subsystem for the Microsoft Windows operating system, designed for persistence and management of structured, semi-structured and unstructured data.

Btrieve is a transactional database software product. It is based on Indexed Sequential Access Method (ISAM), which is a way of storing data for fast retrieval. There have been several versions of the product for DOS, Linux, older versions of Microsoft Windows, 32-bit IBM OS/2 and for Novell NetWare.

<span class="mw-page-title-main">Microsoft WebMatrix</span>

Microsoft WebMatrix is a discontinued cloud-connected website builder and HTML editor for Windows, geared towards web development. WebMatrix enables developers to build websites using built-in templates or popular open-source applications, with full support for ASP.NET, PHP, Node.js and HTML5. Microsoft developed WebMatrix for the purpose of providing web developers with coding, customization, and publishing capabilities all in one place.

ADO.NET is a data access technology from the Microsoft .NET Framework that provides communication between relational and non-relational systems through a common set of components. ADO.NET is a set of computer software components that programmers can use to access data and data services from a database. It is a part of the base class library that is included with the Microsoft .NET Framework. It is commonly used by programmers to access and modify data stored in relational database systems, though it can also access data in non-relational data sources. ADO.NET is sometimes considered an evolution of ActiveX Data Objects (ADO) technology, but was changed so extensively that it can be considered an entirely new product.

The Access Database Engine is a database engine on which several Microsoft products have been built. The first version of Jet was developed in 1992, consisting of three modules which could be used to manipulate a database.

<span class="mw-page-title-main">Microsoft Data Access Components</span> Framework

Microsoft Data Access Components is a framework of interrelated Microsoft technologies that allows programmers a uniform and comprehensive way of developing applications that can access almost any data store. Its components include: ActiveX Data Objects (ADO), OLE DB, and Open Database Connectivity (ODBC). There have been several deprecated components as well, such as the Jet Database Engine, MSDASQL, and Remote Data Services (RDS). Some components have also become obsolete, such as the former Data Access Objects API and Remote Data Objects.

Microsoft Identity Integration Server (MIIS) is an identity management (IdM) product offered by Microsoft. It is a service that aggregates identity-related information from multiple data-sources. The goal of MIIS is to provide organizations with a unified view of a user's/resources identity across the heterogeneous enterprise and provide methods to automate routine tasks.

Microsoft SQL Server Express is a version of Microsoft's SQL Server relational database management system that is free to download, distribute and use. It comprises a database specifically targeted for embedded and smaller-scale applications. The product traces its roots to the Microsoft Database Engine (MSDE) product, which was shipped with SQL Server 2000. The "Express" branding has been used since the release of SQL Server 2005.

SAP SQL Anywhere is a proprietary relational database management system (RDBMS) product from SAP. SQL Anywhere was known as Sybase SQL Anywhere prior to the acquisition of Sybase by SAP.

Entity Framework (EF) is an open source object–relational mapping (ORM) framework for ADO.NET. It was originally shipped as an integral part of .NET Framework, however starting with Entity Framework version 6.0 it has been delivered separately from the .NET Framework.

Microsoft Sync Framework is a data synchronization platform from Microsoft that can be used to synchronize data across multiple data stores. Sync Framework includes a transport-agnostic architecture, into which data store-specific synchronization providers, modelled on the ADO.NET data provider API, can be plugged in. Sync Framework can be used for offline access to data, by working against a cached set of data and submitting the changes to a master database in a batch, as well as to synchronize changes to a data source across all consumers and peer-to-peer synchronization of multiple data sources. Sync Framework features built-in capabilities for conflict detection – whether data to be changed has already been updated – and can flag them for manual inspection or use defined policies to try to resolve the conflict. Sync Services includes an embedded SQL Server Compact database to store metadata about the synchronization relationships as well as about each sync attempt. The Sync Framework API is surfaced both in managed code, for use with .NET Framework applications, as well as unmanaged code, for use with COM applications. It was scheduled to ship with Visual Studio 2008 in late November 2007.

<span class="mw-page-title-main">Visual Studio</span> Code editor and IDE

Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms such as Windows API, Windows Forms, Windows Presentation Foundation, Windows Store and Microsoft Silverlight. It can produce both native code and managed code.

Microsoft SQL Server is a proprietary relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which may run either on the same computer or on another computer across a network. Microsoft markets at least a dozen different editions of Microsoft SQL Server, aimed at different audiences and for workloads ranging from small single-machine applications to large Internet-facing applications with many concurrent users.

An embedded database system is a database management system (DBMS) which is tightly integrated with an application software; it is embedded in the application. It is a broad technology category that includes:

<span class="mw-page-title-main">Windows Search</span> Desktop search platform by Microsoft

Windows Search is a content index desktop search platform by Microsoft introduced in Windows Vista as a replacement for both the previous Indexing Service of Windows 2000 and the optional MSN Desktop Search for Windows XP and Windows Server 2003, designed to facilitate local and remote queries for files and non-file items in compatible applications including Windows Explorer. It was developed after the postponement of WinFS and introduced to Windows constituents originally touted as benefits of that platform.

<span class="mw-page-title-main">.NET Framework version history</span>

Microsoft started development on the .NET Framework in the late 1990s originally under the name of Next Generation Windows Services (NGWS). By late 2001 the first beta versions of .NET Framework 1.0 were released. The first version of .NET Framework was released on 13 February 2002, bringing managed code to Windows NT 4.0, 98, 2000, ME and XP.

<span class="mw-page-title-main">Actian Zen</span>

Actian Zen is an ACID-compliant, Zero-DBA, Embedded, Nano-footprint, Multi-Model, Multi-Platform database management system (DBMS) developed originally by Pervasive Software, which was acquired by Actian Corporation in 2013.

The history of Microsoft SQL Server begins with the first Microsoft SQL Server database product – SQL Server v1.0, a 16-bit relational database for the OS/2 operating system, released in 1989.

References

  1. 1 2 "Microsoft SQL Server Compact 4.0 is available for download and use with WebMatrix" . Retrieved 2020-03-11.
  2. 1 2 3 4 5 "SQL Server 2005 Compact Edition Datasheet". Archived from the original on 2007-03-16. Retrieved 2007-07-03.
  3. 1 2 "Microsoft SQL Server Compact 4.0". Lifecycle. Microsoft Docs . Retrieved 2021-02-26.
  4. 1 2 3 4 "A Lap Around SQL Server 2005 Compact Edition" . Retrieved 2005-07-03.
  5. 1 2 3 4 "SQL Server Everywhere: Just Another Database?" . Retrieved 2007-07-03.
  6. 1 2 "What's New (SQL Server Compact Edition)" . Retrieved 2007-07-03.
  7. "How do i run SQL Server Compact 3.5 on Windows 8 developer preview?". social.msdn.microsoft.com. Retrieved 11 March 2013.
  8. "Microsoft Launches SQL Server 2000 Windows CE Edition at PASS 2000". news.microsoft.com. 2000-10-26. Retrieved 2022-04-16.
  9. "Microsoft Delivers Support for Embedded Devices With Release of SQL Server 2000 Windows CE Edition Version 1.1". news.microsoft.com. 2001-03-21. Retrieved 2022-04-16.
  10. "Microsoft Delivers Next Stage of .NET Solution For Enterprise Mobile Development". news.microsoft.com. 2002-09-16. Retrieved 2022-04-16.
  11. "Microsoft SQL Server 2005". Lifecycle. Microsoft Docs . Retrieved 2021-02-26.
  12. "Microsoft SQL Server Compact 3.5". Lifecycle. Microsoft Docs . Retrieved 2021-02-26.
  13. "Maintaining Databases (SQL Server Compact Edition)".
  14. "Transactions (SQL Server Compact Edition)" . Retrieved 2007-07-03.
  15. 1 2 "Overview of Databases (SQL Server Compact Edition)" . Retrieved 2007-07-03.
  16. "Overview of Databases (SQL Server Compact Edition)" . Retrieved 2007-07-03.
  17. 1 2 "Data Storage Architecture with SQL Server 2005 Compact Edition" . Retrieved 2007-07-03.
  18. Barranis, Patrick (2013-01-11). "Port SQL Compact to Windows RT". Microsoft Connect. Retrieved 2016-06-25.
  19. "Microsoft SQL Server Compact 4.0 Support Dates" . Retrieved 2020-09-17.