Welcome to MSDN Blogs Sign in | Join | Help

Information about SQL Server Compact Edition (SQLce)

On April 6, 2006 Paul Flessner announced SQL Server Everywhere Edition, know known as SQL Server Compact Edition.  http://www.microsoft.com/sql/letter.mspx  SQL Server Compact Edition a new SKU in the Microsoft product platform.  Paul announced that we would have a CTP in the summer of ’06 with final release in the 2nd half of ’06. 

So, what is SQL Server Compact Edition?  Here’s some Q&A that will hopefully help.  Some of this is still not finalized.  So take this information as our current thinking, not a final decision.  The purpose of this post is to give you our current thinking and solicit feedback. 

Q: Is SQL Server Compact Edition a new V1 product? 
A: No.  SQL Server Compact Edition is a new product name to acknowledge the new breadth of reach.  SQL Server Compact Edition is the SQL Server Mobile edition product with its limitation to the mobile platform removed.

Q: What’s SSEv and SSE?
A: Just my shortcut for SQL Server Compact Edition.  SSE is how I refer to SQL Server Express.  These are NOT official abbreviations, just my shorthand. 

Q: Should I be concerned about yet another V1 product?
A: No.  As noted above, SSEv is SQL Mobile with the license restriction removed for the Windows desktop platform.

Q: SQL Mobile and SQL CE were released on the Mobile platform, should I be concerned about SSEv and its stability on the desktop platform?
A: SSEv has been used on the desktop platform within several Microsoft products for years.  MSN Client, Media Center PC and several other products have already been using SSEv.  In order to test SQL Mobile and its predecessor, SQLCE, Microsoft has always tested the codebase using the Windows Platform.  While we do testing specifically on the mobile platform, most of our testing is actually done using the Win32 platform.

Q: Is this a modified version of SQL Express? 
A; No, SSEv is based on the SQL Mobile codebase.

Q: Will SQL Express be continued?
A: Yes, SQL Express is our free version of our server product, SQL Server. 

Q: Which database should I use for my desktop apps?
A: This is a longer discussion than what I’m trying to cover in this Q&A, but both SSE and SSEv will be available for the general desktop scenario.  However, SSEv is targeted specifically for general desktop usage.  It runs in-proc, doesn’t offer data as a service, has a lightweight model for applications that need to share the resources of the users machine with other applications besides the database engine.  SSE is a free version of the server product.  It runs as a service, and while SSE has been tuned to be more efficient about resource usage, it is a server based product.  General guidance is to start with SSEv.  SSE is well suited when you want exact functionality of the server platform, but are willing to deploy a server based product that will require significantly more resources than SSEv.  When considering local data stores, consider the bigger picture of the problem.  A users machine is a different operating environment than a server. 

Q: Will SSEv have the same licensing constraints as SQL Mobile?
A: No.  SSEv will be enabled on all Win32 desktop platforms. 

Q: Can I use SSEv as my web server database?
A: No.  SSEv is targeted at the desktop database.  Our plan is for SSEv to throw a not-supported exception when the hosting process is IIS.

Q: Why won’t SSEv be enabled for web applications.
A: SSev is targeted at client database scenarios.  The SQL Server SKUs, such as SQL Express are targeted as “data as service”.  By maintaining these two product lines as separate targeted scenarios we can enable features that would only apply to each scenario.  One size fits all means one size fits no-one.
SSEv will use the same set of classes that SQLCE and SQL Mobile have used.  System.Data.SqlServerCe.*  Because of this, if a website developer started with SSEv then wanted to switch to one of the Server based SQL SKU’s, such as SSE, they would have to change their ADO.net data access code. 
If a developer was building a client application and started with SSEv and wanted to scale their application to multi-user, they wouldn’t necessarily get rid of their local database.  The design we’re shooting for is for developers to keep their local database using SSEv and synchronize the data in their SSEv database with a server database using one of the various sync technologies.  Developers can use Merge Replication or Remote Data Access (RDA), a lightweight sync technology available to the SQL Mobile platform that will equally apply to the SSEv product.  In addition to these sync technologies, we are working on a new set of sync components based on the ADO.net programming model that we hope to ship in the Orcas product.

Q: Will Microsoft have a unified ADO.net provider?
A: We are considering various ways to abstract our different database products while minimizing the code a developer would have to change.  Rather than wait for a unified provider, we decided the client and data service scenarios are independently big enough to make the products we already have available for developers to start programming today.

Q: What is the feature set of SSEv?
A: For the ’06 release, it will be the same feature set as SQL Mobile. 
http://www.microsoft.com/sql/editions/sqlmobile/sqlmobile.mspx

Q: When will SSEv be available?
A: If you have Visual Studio 2005 you already have a version you can start developing against. 
http://blogs.msdn.com/smartclientdata/archive/2005/07/15/439008.aspx
 We plan to release a CTP of the SQL Server Compact Edition product at Tech Ed ’06 and RTM later this year.

Q: If the feature set of SSEv is the same as SQL Mobile, why do I need to wait ‘till June for a CTP and the end of the year for a final release?
A: While SQL Mobile has already been available for the Win 32/Tablet PC platform, and we already have a lot of experience with it in released Microsoft products, we have some installation decisions we want to finalize.  Our plans are to have a CTP of SSEv that have an installation model other than just copying the dlls to your application directory.

Q: SQL Mobile can be ClickOnce deployed without administrative rights.  Will SSEv have this same ability?
A: This is the main reason we’re not releasing immediately.  Because SQL Mobile can be deployed as private dlls, Microsoft doesn’t currently have a direct way to service these dlls in the case of a critical servicing issue.  We have several technical solutions that we are actively working on and we hope to be able to maintain this non-admin deployment model with SSEv. 

Q: Is SSEv suspect to the same threat that MSDE incurred with Slammer?
A: Well, never say never, but the main difference between MSDE and SSEv is MSDE and SQL Express run as a service.  While SQL Express has its port listening features disabled by default, it does run as a service and these features can be turned on.  Because SSEv doesn’t run as a service, doesn’t ever listen to network traffic, and doesn’t run without the hosting of an application, it doesn’t have the same “surface area” as its server based siblings.  Another key feature of SSEv is it doesn’t allow any code to be placed in the database.  It’s a pure data format.  Because of these differentiations, users should be much more comfortable with SSEv.  Although I’m unaware of any servicing issues in the SQL CE, SQL Mobile history, we do not want to assume we’d never have an issue.  Because of this, we are exploring several servicing options that will hopefully maintain the ClickOnce deployment model without requiring admin rights for installation of SSEv

Q: Can I use SSEv data files as my application document format? 
A: Yes, SSEv data files are pure data.  Unlike the server SKU’s, SSEv doesn’t have any code. No sprocs, views, triggers, extended sprocs, macros or ability to run XP_CmdShell.  Because of this, we do consider SSEv files a doc safe format. 

Q: Can I change the extension of SSEv files and associate that extension with my application?
A: Yes.  Because SSEv has a doc safe format, SSEv files can be emailed and their extensions can be changed to launch your application.  Visual Studio 2005 will only support .sdf file extensions, however, this is a limitation of the designers.  The SqlCeConnection object can handle any extension you wish.

Q: Does SQL Express support the changing of its extension? 
A: No.  SQL Express data file format, .mdf, contains code.  Because of this, Microsoft limits file based ADO.net connections to the MDF extension.  Users should consider .mdf files like exes.  They are just as capable of running code as an exe.

Q: How big is the SSEv runtime?
A: For all 7 dlls, the entire runtime is 1.4mb.  This is less than a SQL Express .mdf file.

Q: What is the data file size limitation of SSEv?
A: Both SSEv and SSE share the same 4gig size limitation.

Q: Does SSEv support multiple connections?
A: Yes.  One of the changes in SQL Mobile 2005 was the addition of multiple connection support.  You can now have several connections in your UI layer and another connection for background sync?  I believe the connection limit is 256 connections.  If you hit this limit, it would be interesting to know why? 

Q: Will SSEv support files placed on network shares?
A: Yes, but this is not meant as a multi-user scenario.  Because we know that users place their documents and settings directory on other servers we’ve enabled this scenario.  However, since SSEv is not a client/server database infrastructure the SSEv engine that opens the file will only share that file with other applications on the same machine.  If another user attempts to open the same data file from another machine the user will receive a connection open error.  We are working hard to make sure we don’t paint ourselves, or allow developers to paint themselves into a corner and travel down a dead end path.  SSEv is a user centric data store.  SQL Server is our data service platform.

Q: Does SSEv have a different set of data types than SQL Server?
A: No.  SSEv has a strict subset of the SQL Server Datatypes.  Developers that build their apps initially with SSEv will not have any issues converting their data up to SQL Server SKUs.  This was not the case with Jet to SQL Server conversions.

Q: Does SSEv have the XML data type?
A: No.  SSEv will place XML in an nText datatype when data is synchronized between SQL Server and SSEv.  So, you still have the XML storage, but SSEv will not have X Path query support in its engine.  This is something we’re considering for a future release.  However, the specific implementation has yet to be decided.  Our main goal is to keep SSEv as small and lightweight as possible.  The LINQ project opens up many interesting possibilities.  In future version we may leverage LINQ to get XML query capabilities without having to build an XML query engine directly into the SSEv engine.

Q: Does SSEv support CLR UDT data types?
A: No.  Because SSEv runs in proc with your application, the idea of hosting the CLR within the database would be a little redundant.  The database is actually hosted within the CLR.  You can place UDT data types in binary data columns, but just as with the XML data type, you will not be able to query into properties of these CLR UDTs.  Also like the XML data type, we may be able to leverage features of LINQ to enable this scenario without having to increase the size of the SSEv engine.

Q: Does SSEv have any unique features from its SQL Server products?
A: Yes.  Because SSEv is focused on local, in-proc data scenarios we can expose features that would otherwise be difficult to expose without scaling limitations.  SSEv will support the SqlCeResultSet api that was shipped in SQL Mobile 2005.  This feature enables developers to create a databindable, updatable, scrollable cursor.  As a user makes a change to a row, the values are immediately pushed back to the database. There’s no need for DataAdapters or DataSets.  SqlCeCommand includes some Seek like features that allow developers to leverage specific indexes as well.

Q: Does SSEv have Typed DataSet support and Drag & Drop support with the Data Sources Window?
A: Yes.  In Visual Studio 2005, developers can now create Typed DataSets for both their desktop and device projects.  For a walkthrough see:
http://blogs.msdn.com/smartclientdata/archive/2005/07/15/439008.aspx

Q: Can the same SSEv data file be shared between device and desktops?
A: Yes.  Since SSEv is based on the SQL Mobile codebase, developers can simply copy their .sdf file from the device to the desktop and back without any conversions.

Q: Does SSEv have a security model?  How does this compare to SQL Express?
A: Yes.  SSEv has a single user security model.  Because SSEv is targeted at per/user data scenarios, the assumption is the data is already partitioned to the user.  The application would provide the Username and Password in the connection string.  Because SSEv is targeted at desktop scenarios, there is no way to bypass the username and password authentication model.  While most would consider the SQL Server product line more secure, they would be correct for server scenarios.  However, the security model for the SQL Server product line is at the entry to the server, not the .mdf file.  Once an end user has access to the .mdf file, the user could use the SQL Express User Instance feature to connect to the mdf file as the DBO.  This bypasses any SA password that may have been applied to the database.  Therefore, under typical scenarios, SSEv will have a better security model that will limit users from viewing the data without your application, or the username and password.

Q: Does SSEv have any encryptions features?
A: Yes.  When creating a SSEv data file you have the option to encrypt the database.  While not nearly as granular as the SQL Server encryption features, this level of encryption provides security against users trying to prod into your data files without permissions.

Q: Can two users on the same machine share the same SSEv data file?
A: Yes.  While SSEv isn’t a data service platform, two users on the same machine would leverage the multi-user features.

Q: Does SSEv support multiple connections on different processes?
A: Yes. 

Q: Does SSEv support stored procedures, or views?
A: No.  Because SSEv is targeted at lightweight, in-proc scenarios these features aren’t available.  However, these features are typically used to provide multi-user abstraction from the underlying database schema.  Because SSEv runs in-proc with your application these features would typically provide more overhead than value.  Because SSEv runs in-proc with your application, why limit yourself to T-SQL within a stored procedure?  By creating a data access layer to your SSEv database you can use the full power of the .NET Framework. 

Q: Does SSEv support Triggers?
A: No.  Triggers do offer some interesting scenarios for eventing models.  We are looking at different models for implementing triggers that could benefit from an in-proc model. 

Q: Is SSEv available for native development with C++?
A: Yes.

Q: Is this a definitive list of features and decisions for the SQL Server Compact Edition product?
A: No.  This is our current thinking and baseline of the SQL Mobile product we are leveraging for SQL Server Compact Edition. 

Q: Does SSEv support Reporting Services?
A: Yes.  Reporting Services can build client reports based on DataSets or Objects.  Since SSEv has dataset and Typed DataSet support, developers can just as easily build a client side report for SSEv as they can any other data source.

Please send feedback on any and all comments.  Is there something I didn’t cover?  Let me know and I’ll add it to the list.

Steve

Published Monday, April 10, 2006 3:38 AM by Steve.Lasker

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# Syringe.Net.Nz - SQL Server Everywhere....

Monday, April 10, 2006 12:17 AM by Syringe.Net.Nz - SQL Server Everywhere....

# SQL Server Everywhere — всё проясняется... [Стив Ласкер]

Monday, April 10, 2006 12:48 AM by Олег Михайлик
Стив опубликовал неплохой FAQ. Откуда произошёл SQL/e, отличия от большого SQL,

# SQL goes wild everywhere

Monday, April 10, 2006 1:04 AM by Nick Randolph's .NET Travels
Since the release of SQL Server 2005 late last year the mobile devices community have been discussing...

# SQL Server Everywhere FAQ

Monday, April 10, 2006 3:03 AM by Corrado's BLogs

# SQL Server Everywhere FAQ

Monday, April 10, 2006 3:42 AM by Corrado's BLogs

# Information about SQL Server Everywhere

Monday, April 10, 2006 3:57 AM by The Problem Solver
Steve Lasker posted a FAQ sheet on SQL Everywhere  or SQL/e as he calls it. See http://blogs.msdn.com/stevelasker/archive/2006/04/10/SqlEverywhereInfo.aspx...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Monday, April 10, 2006 3:58 AM by Maurice

# Interesting things about SQL Server Everywhere

Monday, April 10, 2006 4:57 AM by STEFANO DEMILIANI WeBlog

# Hvad er SQL Server Everywhere?

Monday, April 10, 2006 6:23 AM by guidmaster´s .NET blog
Steve Lasker har en del FAQ savr på hvad SQL Server Everywhere er: http://blogs.msdn.com/stevelasker/archive/2006/04/10/SqlEverywhereInfo.asp...

# SQL Everywhere and why I don't get it.

Monday, April 10, 2006 7:28 AM by crucible's melting pot
Mabster put me onto a post Steve Lasker has made a post about SQL Everywhere and I gotta say, to...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Monday, April 10, 2006 8:53 AM by Steve Kass
You have referred to the new SKU several times as "SQL Everywhere".  In a number of places on the Sybase, Inc. web site, it is stated that "SQL Everywhere" is a trademark of Sybase, Inc. or its subsidiaries.  For example, see http://infocenter.sybase.com/help/topic/com.sybase.help.pb_10.5.apptech/html/apptech/legal.htm

Has Sybase, Inc. released their trademark on "SQL Everywhere" to Microsoft?

Steve Kass
Microsoft SQL Server MVP

# SQL Everywhere FAQ

Monday, April 10, 2006 9:25 AM by You Can Take it With You

# Good news for smart client developers: SQL Server Everywhere

Monday, April 10, 2006 12:31 PM by Ardent Dev

# SQL Server Anywhere FAQs

Monday, April 10, 2006 1:31 PM by Smartymobile
Steve Lasker ha escrito un excelente FAQ (inglés) acerca de de SQL Server Anywhere aquí.
&nbsp...

# SQL Server Anywhere FAQs

Monday, April 10, 2006 1:31 PM by wmugperu
Steve Lasker ha escrito un excelente FAQ (inglés) acerca de de SQL Server Anywhere aquí.
 ...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Monday, April 10, 2006 2:06 PM by Xentrax
I'm happy! Perfect solution for storing user documents.

# Information about SQL Server Everywhere (SQL Everywhere)

Monday, April 10, 2006 2:57 PM by .NET Tools Blog

# Informazioni su SQL Server Everywhere (SQL Everywhere)

Monday, April 10, 2006 2:57 PM by .NET Tools Blog

# The Lowdown on SQL Server Everywhere Edition

Monday, April 10, 2006 4:02 PM by DonS.CF
On April 6th, 2006, Microsoft (via a SQL Server 2005 Update from Paul Flesner) announced a "new" product in...

# SQL Server Everywhere

Monday, April 10, 2006 4:10 PM by Antonio

# re: Information about SQL Server Everywhere (SQL Everywhere)

Tuesday, April 11, 2006 2:04 AM by The Flyer
Is it something like Firebird Embedded?

# re: Information about SQL Server Everywhere (SQL Everywhere)

Tuesday, April 11, 2006 9:36 AM by Steve.Lasker
I'm not familiar with the details of Firebird Embedded, so I can't make a comparison.  To capture the essence: SQL/e is a lightweight, in-proc relational database that offers a subset of the data types and TSQL syntax to provide queries over relational stored data with transactional support.  The SQL/e data format can be password protected with encryption.  SQL/e is based on the proven history of the Microsoft SQL Server Mobile Edition technology.
For details on the feature list check out: http://www.microsoft.com/sql/editions/sqlmobile/default.mspx

Reporting Services Support
I added a Q&A about Reporting to the above content.  Quick answer is YES.

There were some questions about how much SQL/e makes a difference with the LINQ project.  SQL/e doesn't compete w/LINQ.  SQL/e offers a better together story with LINQ.  LINQ doesn’t have a query processor. It takes VB and C# syntax and composes a query to pass to the underlying store.  The underlying store processes this query and returns a result to LINQ, or in this case DLINQ.  In comparison, when using LINQ over XML, there’s no query processor involved.  Large XML files wouldn’t compare in performance compared to leveraging a relational storage engine with a query processor.  Remember, XML files would have to be fully loaded into memory to process a request.  Relational databases have optimized indexes to only load the necessary information from disk into memory.  So, for the scenarios where developers are using XML, or specifically DataSets persisted to disk as their local storage, SQL/e would provide data integrity with the transaction support, security, and a significant performance boost.

Steve

# re: Information about SQL Server Everywhere (SQL Everywhere)

Tuesday, April 11, 2006 9:53 AM by Steve.Lasker
Roger Wolter made a great post describing some of what we all went through in the VS Whidbedy product cycle.  He gave a great summary of the market for SQL Server Express and SQL Server Everywhere: http://blogs.msdn.com/rogerwolterblog/archive/2006/04/09/572101.aspx
It's worth a read...
Steve

# SQL Server Everywhere

Tuesday, April 11, 2006 12:00 PM by It's my life... And I live it...


Interesting product
comparison between SQL Server Everywhere and SQL Server Express. Essentially...

# Random Things

Tuesday, April 11, 2006 3:20 PM by Sriram Krishnan

Hacked together a prototype for my Orcas feature over a weekend. Not bad for a PM,eh? :-). Sorry, I...

# SQL Server Everywhere

Wednesday, April 12, 2006 4:48 AM by Ancora Imparo

 
   Steve Lasker posted a quick Q&A on a semi-new version of SQL Server called SQL Everywhere....

# re: Information about SQL Server Everywhere (SQL Everywhere)

Wednesday, April 12, 2006 5:40 AM by Phylyp
Steve,
Forgive the newbie questions :)

Is SQL/e accessible/usable only through code, or will it have support for a GUI (SSMS-E or a similar one)?

Also, what are your views on using SQL/e rather than XML as a data store, for things like configuration, (BizTalk style) messages, etc.?

Phylyp

# SQL Server Everywhere 追加情報(SQL MobileのWindows desktop 展開)

Wednesday, April 12, 2006 10:12 AM by 米田 Blog ( SQL Server MEMO )
SQL Server Everywhere 追加情報(SQL MobileのWindows desktop 展開)

# SQL Everywhere Q & A

Wednesday, April 12, 2006 6:08 PM by OPC Diary
Steve Lasker's Web Log : Information abo...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Wednesday, April 12, 2006 6:16 PM by Aaron A. Anderson
Why not just remove the usage restrictions of SQL Mobile in the interim?  If it's good enough for Tablet PCs...

I understand you wanting to controll service pack and critical updates, but having a per app instance would also potentially eliminate a bug introduced with an update.

# SQL Server Anywhere FAQs

Thursday, April 13, 2006 9:35 AM by Smartymobile
Steve Lasker ha escrito un excelente FAQ (inglés) acerca de de SQL Server Anywhere aquí.

# re: Information about SQL Server Everywhere (SQL Everywhere)

Saturday, April 15, 2006 10:24 AM by Eric
How can we start developing with it now?
- Can we use Mobile for development while waiting for the CTP?
- Will our smart client prototypes work on XP if Mobile is used?
- How much will break between Mobile and SQL/e? If we put thousands of man hours with mobile (while waiting for SQL/e), we need to protect our investment.
- How reliable is the release date? We also have an "end of the year" committement date. There is some flexibility, but we need to control the risk level.

# re: Information about SQL Server Everywhere (SQL Everywhere)

Sunday, April 16, 2006 1:59 PM by Steve.Lasker
Aaron,
This is exactly the type of conversations we're having.  SQL/e doesn’t have the surface area that a server based product does, so we are less concerned about it.  However, with the GDI+ bug, we’ve learned to never say never.  
Since the api will remain the same, developers can get started today and we plan to hope have have a CTP of the install model by June 06.  

Phylyp
SQL/e is accessable through the standard VS and SQL Server Management Studio editors.  You can create databases, create tables, and in VS even edit data within those tables.  In comparison to XML for configuration, SQL/e would be a great replacement.  As configuration files get large, XML tends to become a problem.  In order to read XML you have to load the entire document in memory to navigate to a particular node.  Likewise, to save a single element, you have to read and save the entire document.  With SQL/e you can read/write one row at a time so it will scale much better.  While LINQ will make queering XML, Objects and Relational data easier, it leverages the underlying technology for query processing.  So, LINQ doesn’t solve this problem for XML.  
Also remember that SQL/e has security and encryption built in, so rather then having to take on the ownership of these problems when dealing with XML, you can delegate this to SQL/e.  
One of the things we’re considering is providing a Windows Forms Settings Provider that would use SQL/e.  We’re also looking to use SQL/e as the general cache for services on the client.




# re: Information about SQL Server Everywhere (SQL Everywhere)

Sunday, April 16, 2006 2:12 PM by Steve.Lasker
Hi Eric,
Yes, yes, nothing, …

Something to recognize is that nothing is done until the software is in hand.  So, while we aren’t planning any changes to the runtime, dlls names, or scenarios beyond what I’ve listed in the Q&A, it’s really hard to commit to anything further.  If I said its firm and something comes up, what recourse is there?  We don’t know what we don’t know.  

Based on the current installed based on Win32 we’re very comfortable with its stability and complete feature set.  We haven’t done anything in web environments and that’s not its target scenario so as long as you don’t assume this will work you’re on the safe line.  The thing holding us up is the install model.  Will Microsoft allow SQL/e to be installed by simply copying the dlls to your project as we do with SQL Mobile and Tablet PC?  Or will Microsoft require an MSI to install the product.  As with my previous post, we’re very comfortable with the security aspects, but we’ve also learned to never say never.  If we allow developers to deploy the dlls directly, Microsoft has no way to directly service those dlls in the event of a critical security servicing issue.  The problem is we don’t currently have a model that allows us to MSI install managed code without requiring Admin rights.  We consider this a big issue for enterprise developers.  What do you think?

Steve

# Info about SQL Server Everywhere

Monday, April 17, 2006 7:50 PM by Guy Barrette

# re: Information about SQL Server Everywhere (SQL Everywhere)

Monday, April 17, 2006 10:38 PM by Brett
This is fantastic news to developers that use XML to transfer data back and forth to mobile devices like myself.  If its only going to be available as an MSI package please don't limit the desktop install to XP SP2 as I find most large organisations (government mostly) still only have XP SP1 and in some cases 2000 SP4 and being a small development firm if we tell them they need to upgrade their OS to use our software their IT department’s would tell us to take a flying leap.

# re: Information about SQL Server Everywhere (SQL Everywhere)

Tuesday, April 18, 2006 10:41 AM by Eric
Steve,

My 2 cents: if I deploy a desktop application which uses SQL Everywhere, I  will consider SQL/e a "component" of that application. If an upgrade is required I expect to do the same thing as with any other component: re-compile and re-deploy. Allowing to patch SQL/e on an existing application is scary since it does not change my build number. Support issues for sure.

I am extremely familiar with SQL Server, but SQL Mobile is totally new to me. Basically, I am trying to understand if:
a) the committement to the availability of that technology on the desktop is firm? If we invest a couple of millions in the next 6 to 8 months on this technology, I want to be on firm ground. I need to deploy in March 2007 at the latest, but probably a beta site in december 2006. Am I out of my mind?
b) While waiting for the summer CTP, can we start development with SQL Mobile? Is the desktop deployment restriction a license issue only? Or will it prevent developing and testing on XP?

# re: Information about SQL Server Everywhere (SQL Everywhere)

Tuesday, April 18, 2006 6:43 PM by Steve.Lasker
Hi Eric,
Thanks for the feedback on the deployment.  We’re actively working on how we’re going to approach this balance. As we close on a decision, I’ll post it to this blog.  I’ve opened another blog post related to the question: http://blogs.msdn.com/stevelasker/archive/2006/04/16/AdminInstalls.aspx

Yes, you can use SQL Mobile today.  We are committed to releasing on the XP desktop.  This is what Paul Flessner announced on April 6th: http://www.microsoft.com/sql/letter.mspx so your not out of your mind.

# The Mobile Minute 137

Wednesday, April 19, 2006 2:02 AM by Nino.Mobile
  ..just a few tonight as I get back in the groove. My new project kicked off this week here...

# SQL Mobile goes Everywhere!

Wednesday, April 19, 2006 9:11 AM by Zandoná Mobile®
For those (like me) who have missed this announcement, SQL Mobile is now called SQL Everywhere, and guess...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Friday, April 21, 2006 7:11 AM by Rob
I would be benefitial if you provide SQL/E source code under a shared code license so as it could be ported onto other platforms as well. 1.4mb is not critical code that Microsoft can't help sharing or at least help porting onto other platforms.

# Informaci

Saturday, April 22, 2006 3:42 AM by Blog de Antonio Soto

# SQL Mobile on Desktop

Monday, May 01, 2006 3:41 AM by SQL Mobile Blog
Hi and welcome to the SQL Mobile blog!
 
The SQL Mobile team wants to make this blog a place...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Wednesday, May 03, 2006 1:54 PM by Troy Wolbrink
I'm inspired by experiencing the Outlook 2003 model of seemless offline data access, and I'd love to implement this feature into my own applications.  

My desktop application currently uses Jet 4.0 as the database backend.  This has been ideal since my application typically only has one user connected to the database at a time.  Jet's simple, inproc, single-file database engine has been great for my users.

But now I want to develop an ASP.NET version of my application as well as a CF.NET version.  And I want these all to synchronize.  For my ASP.NET app I’d be fine with using SQL Server 2005.  For my CF.NET app I'd be fine with using SQL Mobile (Everywhere).  But the engine to use for my desktop app has always been up for debate.  SQL Server 2005 has dropped replication support for Jet/Access subscribers.  SQL Express is just too much for my app or my users to download and maintain, and it's more of a 2-file system.  Thus, I'm thrilled to hear about SQL Server Everywhere.  I like that it is a strict subset of the full SQL Server, as I have a better chance of actually sharing some SQL code here and there.

However, from my perspective, there are some features I'd be losing with a transition from Jet/Access to SQL Server Everywhere:

1.  Multi-user access to a database file on a shared network folder.  I understand that this not a "best practice" for multi-user situations, but for non-technical users this provides a VERY simple solution for very small teams (ie. husband/wife on a home network).  Perhaps the artificial limit could be raised to allow connections from no more than two computers at a time.

2.  The query designer.  I often use the visual query designer to more quickly write my SQL.  From what I can tell this is not available in SSMS for SQL Mobile databases.  It seems like this could easily be added to SSMS without touching the SQL Mobile engine.  It would also be nice if it would provide the SQL script for creating tables, etc.

3.  Ability to link to tables from Access.  My application has many integration points with Office, and one such feature of my application generates a new Access database for my user with linked tables referring to my application's database tables.  This gives my power-users a way to write their own queries and reports.  From what I can tell, Access 2003 can not link to tables in a SQL Mobile database.  Perhaps if an ODBC driver could be provided, this would be possible as Access could use ODBC for this.

These are not necessarily show stoppers, but they would be a step backward.  I’m still strongly considering moving to SQL Everywhere.  But if these three shortfalls could be addressed the choice would become more obvious to me.

Thanks,
Troy

# SQL/e

Monday, May 08, 2006 4:41 PM by yysun

# re: Information about SQL Server Everywhere (SQL Everywhere)

Tuesday, May 16, 2006 3:20 AM by Erik at HS
Re: Can I use SQL/e as my web server database?
A: No.  SQL/e is targeted at the desktop database.  Our plan is for SQL/e to throw a not-supported exception when the hosting process is IIS.

- we currently have a scenario where we prebuild device databases via a web service and would be very sad if we are no longer allowed to do so - any thoughts ?

# re: Information about SQL Server Everywhere (SQL Everywhere)

Wednesday, May 17, 2006 9:55 PM by Steve.Lasker

Troy,
Multi-User – The architecture limits our ability to make it multi-computer/user.  Multiple users on the same computer can share the same database, even at the same time as each database instance has a shared memory footprint.  However, the locking scheme prohibits us from enabling multi-computer.  Jet does this with a lock file external to the database file that the engine knows to look for.  This was the pro, and con for the stability issues as it’s really not a client/server database.  It’s a file shared database suspect to network drops and corruption.  So, I don’t see us doing multi-computer as this would be an architectural change and muddying the line between per user database/data and multi-user.
However, using the new sync components, our goal is to make it very trivial for you to keep your household in synch with a master database.  And, yes, the master could actually be another SQL Ev database.

Query Designer/Builder – If your talking about the query builder that is shared in VS and SSMS then this should work. The Query Builder is actually built by VS and is shared in many products.  There were some discrepancies in Whidbey that we’re working to rectify.  For instance you can edit data in SQL Ev within Visual Studio.  However, you can’t do this in SSMS.  Some of this will be fixed in SSMS SP2.

Access / ODBC – Yup, this has been coming up a lot.  We don’t know when / how we’ll enable this, but we are hearing it quite often.  So, I’d like to say stay tuned, but honestly we have a lot of work to do in a short time to add a bunch of features to SQL Ev for the Orcas release.  And, of course, we’re still working on the initial release of SQL Ev.  We’re still on track for Tech Ed and I’ll post some details soon.

Erik,
Are you saying you already do this today?  I’m assuming you either have VS or SQL Server installed on the same box.  There are a couple of ways to solve this.  One is to use a Windows Service to actually build the .sdf files.  While we will be blocking ASP.net from using SQL Ev directly, it will be a soft block as we do know there are scenarios where developers have justifiable needs.  Honestly, we haven’t yet decided how to message the work around.  We’re really concerned about not creating the same IIS/Jet problems we’ve had in the past with frustrated users who start with Jet then don’t understand why it doesn’t scale.

Thanks for the great feedback Troy, Erik and others.  The feedback posted has been helpful for me and the team to prioritize all the things we’d like to get done.

# SQL Everywhere : SQL Mobile 2005 porté sur PC

Sunday, May 21, 2006 7:26 AM by Convergence numérique
Voici une très bonne nouvelle pour les développeurs de solutions mobiles : la base de données Sql Mobile...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Monday, May 22, 2006 4:29 PM by Troy Wolbrink
> Multi-User – The architecture limits our ability...

I didn't realize this.  I'm a *little* more satisfied knowing it's not artificial, but consider this a feature request (among many I'm sure).

> However, using the new sync components ... And, yes, the master could actually be another SQL Ev database.

This sounds *very* intriguing.  I can't wait to hear more about it!

> Query Designer/Builder – If your talking about the query builder that is shared in VS and SSMS then this should work.

I tried the designer in VS and it worked much better.  That's good enough for me!

> Access / ODBC – Yup, this has been coming up a lot.  We don’t know when / how we’ll enable this...

Perhaps the Access team has/will enable this by adding support for linked tables via OLEDB or even ADO.NET drivers.  Isn't ODBC a bit dated anyway?  :^)

> While we will be blocking ASP.net from using SQL Ev directly, it will be a soft block as we do know there are scenarios where developers have justifiable needs.

Here's some ideas:  Have an "un-block" registry key or something you can add to the web.config or machine.config.  Perhaps even require a licensed SQL Server available, if losing sales is a concern.

# re: Information about SQL Server Everywhere (SQL Everywhere)

Monday, May 22, 2006 8:21 PM by Steve.Lasker
Access – We’re trying to figure out who’s going to support which side.  Honestly, it’s a little low on our priority list for now, but something that will definitely move up the stack.  The fact that Office and users would want to use SQL Ev for their scenarios means we’re right on target.  I’m confident it will happen, just a matter of how fast.

IIS/ASP.net  Unblocking – we do have an “unblock” mechanism.  We just haven’t decided how to message it.  We basically don’t test or immediately intend to support multi-user web scenarios, but developers have single user asp.net scenarios.  Since there’s no way to differentiate these, we decided to “soft block”.  Make your case, a gift would be nice, and we we’ll eventually make the key a little less secret. <g>
Steve

# re: Information about SQL Server Everywhere (SQL Everywhere)

Wednesday, May 24, 2006 9:56 AM by Erik at HS
IIS/ASP.net  Unblocking  - our case is that we currently have in production a mechanism to build SQL Mobile files server side for performance reasons. Hope that is specific enough...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Thursday, May 25, 2006 2:03 AM by Lonifasiko
Hi,

I would like to know if we, Compact Framework programmers would be able to synchronize with SQL Server Anywhere using RDA or Merge Replication freely.

What's the expected launch date for SQL Server Anywhere?

Thanks in advance.

# re: Information about SQL Server Everywhere (SQL Everywhere)

Saturday, May 27, 2006 12:37 PM by Steve.Lasker
Lonifasiko
We're finalizing the dates for the launch date, but we'll have a CTP ready at Tech Ed.  Final date is broadly stated as 2nd half of 06 as we want to leave a window open for feedback for releasing the bits.
SQL Server Everywhere replaces SQL Mobile.  So, what ever you could do with SQL Mobile ont he device, you can do with SQL Everywhere including merge replication and of course RDA.
What I think your question is, is whether SQL/e can be a publisher.  The answer is no for RDA and Merge.  But it can for our future sync components we'll be shipping in Orcas.  So, you'll be able to sync from SQL/e on the device to SQL/e on the desktop.
Did I get your question correct?
Steve

# re: Information about SQL Server Everywhere (SQL Everywhere)

Saturday, May 27, 2006 12:39 PM by Steve.Lasker
Erik, pleaes contact me directly: http://blogs.msdn.com/stevelasker/contact.aspx

# re: Information about SQL Server Everywhere (SQL Everywhere)

Sunday, May 28, 2006 5:13 AM by Jeff Bowman
Regarding redistribution rights, will licensing for small-footprint ISV retail applications built on SQL/e be royalty-free?

# re: Information about SQL Server Everywhere (SQL Everywhere)

Sunday, May 28, 2006 11:28 PM by Steve.Lasker
Hi Jeff,
SQL/e is free for one, two or two thousand copies.  Of course, if you want to pay us, I'm sure we can arrange something <g>.
To be complete, SQL/e doesn't have any licensing fees.  However, SQL Server does.  So, if you're using SQL/e to sync with SQL Server, that's when you'll need a client access license CAL for each client synching.  SQL Server just considers this another connection, so it doesn't matter if it's SQL/e, a web client or a smart client, they're all just clients.

Steve

# Catching up.

Monday, May 29, 2006 5:16 AM by crucible's melting pot
Hey,
I know I don't blog much so heres a few things that you probably saw if you read my comments, but...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Tuesday, May 30, 2006 3:55 PM by Steve Clark
Just ran across your info about SQL/e and was excited to here about an alternative to Access and SQL/x. We currently use Access in our VB6 application.  However, many of customers share the .mdb accross a network, which, if I'm reading correctly, SQL/e would not support. We're not thrilled at the prospect of installing and running SQL/x on each of their desktops.  

I'm not sure I understand your statement:
"We are working hard to make sure we don’t paint ourselves, or allow developers to paint themselves into a corner and travel down a dead end path."

I would love to have "corner" that included SQL/e that could access the database file over a shared network folder.

Any new SQL/e developments in this area?

# re: Information about SQL Server Everywhere (SQL Everywhere)

Wednesday, May 31, 2006 8:10 AM by Steve.Lasker

Hi Steve,
The problem is SQL/e is designed and optimized as an in-proc, multiple connection, lightweight database.  It’s not a client/server, multi-user database service that knows how to remotely service requests.  Jet does enabled users to share mdb’s across the network, and while it has been productive, it’s also been one of the biggest source of problems.  Rather then taking the one-size-fits-all approach, with the release of SQL/e we are working to divide and conquer the local in-proc database scenario and the multi-user client server database.  

Considering the footprint, absolute minimal impact to your desktop machines, I’m curious why you’re not thrilled about installing SQL/e on each machine.  Even if we supported shared .sdf files on a network share, we would still require SQL/e to be installed on each machine.  That’s the nature of an in-proc engine.  This is the same for Jet.

It’s worth noting that while we don’t support, and don’t intend to support, -shared- .sdf files on a network share, you can place the .sdf on a file share for single user usage.  The first machine that opens the .sdf file will gain a lock that will block other machines from opening the file.  This enables users who share their personal documents on a file share.

Steve

# re: Information about SQL Server Everywhere (SQL Everywhere)

Wednesday, May 31, 2006 1:08 PM by Steve Clark
Steve,
I think you misread my statement: We're not thrilled about installing SQL Express on each of our customer's desktops. We may end up doing it if we have to.  Many of customers have a small number of workstations networked together with one acting as a server in the sense that it shares folders and files. In this environnment, it seems a bit much to install and run a service on each desktop to access a common data file. But I might be mistaken here  :-)

The sync features sound interesting. Are they available now? Could you have SQL/e equipped workstations syncing to another SQL/e equipped workstation sharing the .sdf?

Thanks,
Steve

# re: Information about SQL Server Everywhere (SQL Everywhere)

Saturday, June 03, 2006 9:34 PM by Steve.Lasker
Steve, I think your getting SQL Express and SQL Everywhere confused.  You’re not the first; we trip up in meetings all the time <g>
SQL Everywhere doesn't run as a service.  It's simply several dlls, totally less then 1.6mb.  If you exclude the 227k ADO.net provider for SQL/e the entire SQL Everywhere runtime fits on a floppy.  
When you install SQL Everywhere it simply copies these dlls to the %ProgramFiles%\Microsoft SQL Server Everywhere\v3.1 directory.  It then GAC's the ADO.net provider so it can be loaded by managed apps.  There's no service running, EVER.  If you're not using SQL/e as part of your app, it isn't running.  It can't run as it can only run if it's loaded in-proc by an application.
So, the impact of installing SQL Everywhere is about as minimal as it gets.  

Now, for your small networks where you want several desktops to share a common database, then yes, that’s the SQL Express scenario.  You would install SQL Express on that one, and only one workstation. Each client can connect to that single workstation.  In this case you likely wouldn’t have a local database on each machine as they’re all sharing the common SQL Express.

SQL Express is the free Data as a Service platform.  SQL Everywhere is the single user data storage solution.

New sync features.  We don’t have anything released yet.  I’ll have some stuff to demo at Tech Ed, but nothing to share just yet.  Yes, you’ll be able to sync between SQL Everywhere and a central SQL Everywhere database.  In this case SQL Everywhere still isn’t being exposed as a service, rather you would configure your machine to expose Sync Services that would then load SQL Everywhere.  While this is possible for some scenarios, our mainline scenario is to use SQL Everywhere on the client and sync with SQL Server (Express, standard, pro, …)

Now, just to fill in one more scenario, you can open an .sdf from a file share.  However, the first machine that opens the file places a lock on it, and no other machine can open the file until the first closed the connection, thus releasing the lock.  Because SQL Everywhere runs in-proc, the hosting machine literally opens the file and does the locking behavior.  Jet has a lock file they place on disk, which while empowering has all sorts of issues.

Hope this helps,
Steve

# MEDC 2006 Europe Keynote - DONE!

Tuesday, June 06, 2006 10:49 AM by Backstage at MEDC
Another fantastic event kicked off in Nice, France today at the Acropolis.
Todd Warren delivered a...

# Tools &amp;amp; Help For Building Mobile LOB Applications

Thursday, June 08, 2006 6:50 PM by Windows Mobile Sync and Replication Platform
If you're developing Line-of-Business (LOB) applications that have needs beyond the cool stuff provided...

# SQL Server 2005 Everywhere Edition - lightweight, flexible, free datastore

Tuesday, June 13, 2006 5:25 AM by Robert Burke's Weblog
SQL Server 2005's Express Edition is free, it supports database sizes up to 4GB, it allows seamless upgrades...

# TechEd에서 발표된 것들

Tuesday, June 13, 2006 11:37 PM by bkchung's WebLog
VSTE4DP(Visual Studio Team Edition for Database Professionals) - 얼마전에 발표한 VSTE4DP의 CTP.
Biztalk Server...

# re: Information about SQL Server Everywhere (SQL Everywhere)

Wednesday, June 14, 2006 3:47 PM by Diego Vega
Steve, when you say "Our plan is for SQL/e to throw a not-supported exception when the hosting process is IIS", there is an issue that comes to my mind. Right now we are working on an application that needs to run on the web in multiuser mode, but also needs to run stand alone in disconnected scenarios. Because of costs concerns we decided that we would only develop a ASP.NET 2.0 version of the application and then would leverage this same version on local IIS for stand alone mode. I see that such an scenario would not be supported by SQL/e. But in any case, don't you think it would be interesting to pair SQL/e with Casini? I think this would be an interesting lightweight duo.

# New and Notable 101

Wednesday, June 14, 2006 6:06 PM by Sam Gentile
Not much today.
WCF/SOA/WSE

The WCF RSS Toolkit is a Windows Communication Foundation-based framework...

# CTP of SQL Server 2005 Everywhere Edition Now Available

Thursday, June 15, 2006 12:17 AM by Backstage at MEDC
SQL Server 2005 Everywhere Edition is the&amp;nbsp;followup to&amp;nbsp;SQL Server 2005 Mobile Edition (SQL Mobile).&amp;nbsp;&amp;nbsp;...

# Information about SQL Server Everywhere (SQL Everywhere)

Friday, June 16, 2006 9:02 AM by StWy
How can we access the Sql everywhere from the management studio?

The only servers I can get is localhost\SQLEXPRESS

# re: Information about SQL Server Everywhere (SQL Everywhere)

Saturday, July 01, 2006 4:28 AM by matt.tester
It's a shame about the restriction with using it for ASP.NET applications. I can understand the reasons as they've been described but there is surely a case for Sql Everywhere being used for simple websites, where a full SQL Server hosting plan is overkill.

# re: Information about SQL Server Everywhere (SQL Everywhere)

Monday, July 03, 2006 6:35 AM by Phylyp
For what it's worth, I support your decision to not support multi-computer access to SQL/e databases.

I once built a Jet solution that was accessed by multiple computers, and watched it *sink* when about 50 users hit it.
I then had to introduce a connection-pool between the client and the database, basically turning a simple two-tier app into a three-tier one!

# SQL Mobile on Desktop

Monday, July 03, 2006 9:10 AM by SQL Server Everywhere Blog
Hi and welcome to the SQL Mobile blog!
&amp;nbsp;
The SQL Mobile team wants to make this blog a place...

# SQL/E Windows 2000 support

Thursday, July 06, 2006 9:23 AM by Marcin Kosieradzki
Hi,

Is SQL/E RTM going to support Windows 2000? CTP version supports only XP SP2+, but this post states that: "SQL/e will be enabled on all Win32 desktop platforms.".

# ADO.NET and SQL Server Everywhere

Friday, July 07, 2006 1:10 AM by Data Access blog
Steve Lasker has posted a screencast / video over on Channel 9 providing an overview on the various ADO.NET...

# SQL Server Everywhere

Monday, July 10, 2006 1:22 PM by Windows Forms Documentation Updates
Steve Lasker has a stream of information about this new technology. Start with his Info post and work...

# ADO.NET and SQL Server Everywhere

Tuesday, July 11, 2006 1:39 PM by ADO.NET team blog
(this post was originally posted here)
Steve Lasker has posted a screencast / video over on Channel...

# re: Information about SQL Server Everywhere (SQL Ev, SQL/e)

Thursday, July 20, 2006 3:39 PM by acid
Is SQL/e support Windows XP Embedded OS?

# SQL Server Everywhere (SQL Ev, SQL/e)

Sunday, July 23, 2006 5:37 PM by Hans
This is wonderful, highly appreciated stuff.
You encouraged us in the Channek 8 video to send requests for Xml support.
Yes: please do! Xml will be crucialfor a more object orientated use: With Xml support, code revision and maintenance of applications by others will be significantly enhanced.

Hans

# re: Information about SQL Server Everywhere (SQL Ev, SQL/e)

Thursday, July 27, 2006 10:53 AM by crifo
Hi Steve,
I must to realize a database application for an Automation system consisting of a Industrial PC with Operative System microsoft windows embedded.

1° question: Is Microsoft sql server 2005 everywere compatible for Microsoft windows embedded?
(I ask this because in specific of its is not clear)

2° question: In the case that it's compatible,  if I instal it in a industrial Pc can it to act by database server or necessity of a remote server?

# What is 'SQL Server Everywhere Edition'?

Friday, July 28, 2006 12:51 AM by Data
So, what is 'SQL Server Everywhere Edition'?
Answer?

Check out this Channel 9 video with Anil Nori...

# SQL Everywhere FAQ

Tuesday, August 01, 2006 11:32 PM by Jan Yeh

# re: Information about SQL Server Everywhere Edition (SSEv)

Sunday, August 13, 2006 5:07 AM by Anthony Carrabino
With all this excitement about SQL Everywhere, i just wanted to post about another exciting database release for .NET and Compact Framework developers -- VistaDB 3.0.

We just released VistaDB 3.0 CTP, which unlike SQL Everywhere, is the world's first fully managed and typesafe SQL database engine designed for .NET and the Compact Framework. VistaDB 3.0 will run on fully managed on .NET, 64-bit .NET Compact Framework, Mono, and Windows Vista. Lots of features and interesting differences between VistaDB 3.0 and SQL Everywhere -- we hope .NET and Compact Framework developers take a serious look at what we built.

Comparison of VistaDB 3.0 vs SQL Server Everywhere:
http://www.vistadb.net/compare_sql_everywhere.asp

Screenshots:
http://www.vistadb.net/screenshots_vistadb3.asp

VistaDB 3.0 info:
http://www.vistadb.net/vistadb3.asp

Thanks for letting me post to your blog.

Anthony Carrabino
www.vistadb.net

# Is SQL Everywhere really more secure than SQL Express?

Thursday, August 17, 2006 10:03 AM by Stew Davis
I understand your point about mdf file, but if the file is not encrypted in SQL Everywhere what would keep someone from reading the native file format and extracting the data. If they have the wherewithal to know to copy and attach the mdf file than it would be likely that they will know how to read an unencrpted SQL Everywhere file (via some download if they don't have the programming ability). Also, while the SQL Express service is running a user will not be able to copy the file. I assume this is not the case SQL Everywhere.
Is the above accurate?

What are the performance issues associated with encrypting the SQL Everywhere file?  

How much of the SQL 2005 TSQL will be supported?

# re: Information about SQL Server Everywhere Edition (SSEv)

Thursday, August 17, 2006 11:29 PM by Steve.Lasker
Hi Stew,
Everywhere Edition files can be encrypted in two ways.  One, you can simply encrypt the file on the connection string.  If you don’t have the password, then you can’t parse the file.  However, because securing a password is near impossible on the client, SSEv supports the features of the Windows Encrypted File System (EFS).  With EFS enabled on a file, users are unable to copy the file off the machine if they aren’t the user.  If they are the user, they are prompted that copying an EFS enabled file will loose its encryption.  The main point about SSEv vs. SQL Express (SSE) encryption comparisons, is the features of SSE encryption are based on the typical server environment.  Once you’re “on the box”, it’s relatively easy to circumvent the security features.  SSE does support EFS when used with the User Instance features, but not under standard connection features.  When running with User Instance, the service is running as the user, so it has the necessary rights to open the database as it’s encrypted as the same user as the service.  This isn’t the case when the database is running under the main instance.  When running with the User Instance feature, the database isn’t attached until the application is running.  So, the rouge user can copy the file.  Security is only useful if properly implemented.  The more complex the model, the more likely it won’t be properly secured.  The issue here is while SQL Server has some of the best security features in the industry, they are geared around server scenarios where you connect to the server remotely.  SSEv was designed where the data file is always in the hands of the user.

Copying files
You can copy a SSEv data file while it’s open. This is actually the backup mechanism.  However, as noted above, if using the User Instance Features of SSE, you can copy the MSF file if the app isn’t running.

Perf
We haven’t published perf numbers for SSEv yet as we’re still optimizing for desktop scenarios.  This is one of the reasons we’ve been holding up the initial SSEv desktop release.  However, with SSEv, we don’t consider TSQL throughput the top feature.  We think of performance of the overall machine.  However, with that said, we are making sure that SSEv performance numbers are very good.  

Steve

# re: Information about SQL Server Everywhere Edition (SSEv)

Thursday, August 17, 2006 11:35 PM by Steve.Lasker
Crifo,
Windows Embedded:
Like Win2k, we do believe we can support Windows Embedded.  However, there are enough differences that the QA team wants to run some test passes before committing to it.  So, the answer is, it should work, we would most likely fix any bugs, but we’re still finalizing how official we’ll be on Windows Embedded.  …stay tuned.  

Remote connections:
I’m not sure I understand the question, but I’ll answer it this way.  Let me know if you meant something else.  SSEv does not listen to network traffic.  There is no hosting service.  However, you can do one of a few things.  You can write your own Windows Service to expose it.  You can also connect to the file by sharing the file sharing.

Steve

# re: Information about SQL Server Everywhere Edition (SSEv)

Monday, August 21, 2006 1:43 AM by srinsoft
Hi
We are devloping a database management utility for MSDE,sql server enterprise and sql EV
There are system queries available for performing index rebuild and setting minimum and max memory on msde and sql server by using the following statements below
"DBCC DBREINDEXALL(S)"
"SP_configure 'min server memory',1024 Reconfigure"
"SP_configure 'max server memory',6144 Reconfigure"
But is there a way I can perform the same on SQL Ev. I tried using the above statements, but it doesn't wor out, can anyone help me with statements specific to SQL Mobile or Ev.

# re: Information about SQL Server Everywhere Edition (SSEv)

Wednesday, August 30, 2006 8:21 AM by JazzyJ
Is SSEv thread safe?

# re: Information about SQL Server Everywhere Edition (SSEv)

Thursday, August 31, 2006 11:45 PM by Steve.Lasker
Yes, SSEv, as an engine, is thread safe.  Multiple processes, appdomains, apps, can all connect to the same SSEv data file at the same time.  

# re: Information about SQL Server Everywhere Edition (SSEv)

Sunday, September 10, 2006 2:05 PM by Shloma
Hi

The main problem for me is, that SQL Server Express is too big of a download and takes too long too install so I was hoping that the SSEv will help me here, but since it dosn't support sprocs, views and UDF's its a real problem for me, did anything change in this regard since you wrote this blog?

Regards,
Shloma

# re: Information about SQL Server Everywhere Edition (SSEv)

Saturday, September 16, 2006 1:01 AM by Steve.Lasker
Hi Shloma
No, we do not plan to support code in the database, which includes Sprocs and UDF's.  Views are a bit interesting, but we believe the ADO.NET entity framework will provide the abstraction that views provide and more.  
It takes folks some time to think about a local database differently.  Simply put, when you have a database in-proc with your code, why would you limit yourself to the TSQL language.  You can do a lot more with managed code than you can accomplish with TSQL.  And, that assumes we have full SQL Server TSQL support.  There's a reason the engine is so small, we have the focused features for an in-proc database.  
What would you expect from sprocs?  Abstraction?  The database is part of your app?  The typical abstraction layers required between the database and multiple apps just don't apply.
Performance?  While we could sneak some performance for caching a query plan, we'd likely loose it for the extra "weight" of supporting sprocs?
UDF's?  Again, what about using a function in full managed code?  With LINQ, and the ADO.NET Entity Framework, we have a more powerful features at your hands.  ...or you will...
Views?  Aggregate multiple tables in a single view?  Views typically only update one base table, ...sometimes.  With the Entity Framework you can get the aggregation, and all tables are updateable.

We appreciate the need for wanting the same programming model locally when compared to the server.  However, sometimes the uniqueness is something to leverage and embrace, not eliminate.  

We are working on a white paper to try and explain the Express and Everywhere target scenarios.  We hope to address the sprocs issue as well.  

In short, we consider Everywhere Edition the default local database choice for local storage.  Express may be used for local storage in extreme, but rare cases.  
On the other hand, If you're locating data on a central machine for use by multiple people, then Express is your starting point. Express is our free, feature rich data as a service platform.  
A perfectly valid scenario is Express on the central machine, and Everywhere Edition on the local machine.  

Steve

# re: Information about SQL Server Everywhere Edition (SSEv)

Tuesday, September 19, 2006 11:32 AM by OS
I'm getting a protected memory access error at times while using the product in a multi-threaded application.  What is the best forum to post this issue?

# Branch, Branch, Branch!

Tuesday, September 19, 2006 12:03 PM by OS