Purchase |  Products |  Downloads |  Forums |  Blog |  Free Trial     

 

VistaDB compared to Microsoft SQL CE 2005
(SQL Compact Edition, SQL Everywhere and SSEv)

Microsoft SQL Server 2005 Compact Edition or SQL CE (SQLCE) and previously known as SQL Server Everywhere and SSEv, is a small footprint client-only edition of SQL Server 2005. SQL CE is Microsoft's database solution for mobile and single user desktop development.

Unlike VistaDB 3.3, SQL CE is not a managed and typesafe database. SQL CE features an unmanaged architecture and was not designed specifically for the Microsoft .NET Framework or Compact Framework.


VistaDB is an excellent alternative to SQL CE (Compact Edition)

VistaDB provides managed programmers a great alternative to SQL CE (Compact Edition). VistaDB has none of the limitations of SQL CE, and runs on more platforms (Mono 1.2 supports Linux and Mac OS X). CLR Procs, CLR Triggers, Full Text Search, Views, Image (BLOB data) and other missing features in SQL CE are present in VistaDB 3. If you need an embedded database with XCopy deployment for a managed environment, look no further than VistaDB.

We have heard over and over from users looking for SQL CE embedding tutorials that the process is too complex and just not intuitive. Our process is very simple, add a reference to our assembly and build. It is that simple. To deploy copy ONE DLL and your databases. You can even embed our DLL within your app using ILMerge and have a zero copy deployment. Embedding VistaDB with you application is by far the easiest option available on the market today.

Visual Studio Integration

SQL CE 3.1 only works with Visual Studio 2005, not VS 2008. SQL CE 3.1 is really only a service pack for SQL Everywhere 3.0 - they changed the name, and they let it run on the desktop. Even though it already could run on the desktop, Microsoft had blocked it for marketing reasons.

SQL CE 3.5 GUI designers only work with Visual Studio 2008, although you can manually write code against 3.5 in Visual Studio 2005. The 3.5 runtime does not integrate with Visual Studio at all, you must install the SDK version. And once a 3.1 database is opened in 3.5 you cannot touch it from 3.1 again.

SQL CE will not support the LINQ to SQL Driver for Visual Studio 2008, even though it does support SQL Server 2008. SQL CE users will have to wait until the Entity Framework release before they can use LINQ against a SQL CE database.

SQL CE is not for multi user

SQL CE in all of it's versions is not designed for a multi user environment. In fact, it is blocked from doign so. You can open multiple connections to the database from your process, but not from other processes or from remote machines. The database was designed for a single user application.

 

SQL Compact Edition (SQL CE) Limitations and Restrictions

  • Unmanaged and not typesafe Win32 architecture
  • No support for Views
  • No support for Triggers
  • No support for Stored Procedures
  • Cannot be used across a network or with ASP.Net (no multi user support)
  • Does not support smalldatetime, image, xml, varchar(max), nvarchar(max), varbinary, char(c), varchar(n) datatypes
  • You cannot integrate CLR assemblies
  • Cannot be used for webservices / SOAP
  • Maximum usage of 1 CPU
  • No native 64 bit version (Version 3.5 is supposed to have a 64 bit runtime)
  • No Full Text Search indexes
  • No cross platform support

Comparison Chart

Feature VistaDB 3.3 VistaDB 2.1 SQL CE
# of files to deploy 0 or 1 2 or 3 2-7
Size of total deployment 900 KB 700 KB 1,834 KB
Number of concurrent connections Unlimited Unlimited 256
Concurrent process connections OS Limit OS Limit 1
Database Size Limit 4 TB 4 GB 4 GB
Max CPUs Supported All All 1
100% fully managed and typesafe
Useable from ASP.NET
LAN multi user support
SOAP / Webservice usage
Developed in C#
Mono 1.2.x support (.NET for Linux, OS X, etc.)
Single assembly footprint
ZeroClick™ deployment
Can be completely embedded into a managed .EXE or .DLL to create a single file application
APTC (Allow Partially Trusted Callers) Attribute for ASP.NET apps (Medium Trust)
Isolated Storage support
SQL Views
CLR Procs (Managed C# & VB.NET procs) new
UPDATE ... FROM syntax support
Connection Pooling
Binary large object (BLOB/Image) support
.NET 1.1 support (3.0 Only)
.NET 2.0 support
.NET 3.0 / 3.5 support (3.2)   3.5
ASP.NET and Web Service Support  
Compact Framework 2.0 support
.NET 64-bit native support 3.5
Visual data management tools
(Data Builder 3 includes full C# source)
Visual data migration tools
(Data Migration Wizard 3 includes full C# source)
Procedural T-SQL Select, Case and If support
Implicit and explicit, transaction processing support to commit and rollback grouped changes
Built-in 32-bit to 448-bit Blowfish encryption
Network shared access
UNICODE (NChar, NText, NVarchar)
Windows Forms support (WinForms)
Wide range of data-types, character data types, IMAGE, MONEY, and IDENTITY
SQL-92 compliant
Full referential integrity with cascading deletes and updates
Multiple connections for foreground and background operations
Scrollable and updatable cursors that provide fast and easy data access
SET Functions (aggregates), INNER and OUTER JOIN, subselect, and GROUP BY and HAVING clauses
CLR Triggers (C# and VB.NET)
( INSERT / UPDATE / DELETE)
 
T-SQL Stored Procs
T-SQL User Defined Functions (UDFs)  
Full-Text Search indexes
Visual Studio 2005 Server Explorer Integration   3.1 Only
Visual Studio 2008 Server Explorer Integration (3.2)   3.5 Only
LINQ Entity Framework Support (Q1 2008)   ?
Mono Support (Linux and Max OS X)  

The Microsoft ILMerge utility can be used to fully merge the VistaDB .NET assembly (VistaDB.NET20.DLL) directly with your .EXE or .DLL to make a single-file deployment and eliminate the need to deploy additional files.

 

Home |  Support |  FAQ |  Testimonials |  Site Map |  Contact Us |  News Archives |  Terms  
 © 1999-2008 VistaDB Software, Inc. All rights reserved.