Friday, January 28, 2011

SQL Server Compact Toolbox 2.0–Visual Guide of new features

Version 2.0 of my SQL Server Compact Toolbox extension for Visual Studio 2010 is now available for download. This blog post is a visual guide to the new features included in this release, many suggested by users of the tool via the CodePlex issue tracker.

Full support for SQL Server Compact 4 and the Visual Studio 2010 SP1 Tools for SQL Server Compact 4

The list of databases in the toolbox is now pulled from three sources, Server Explorer connections to 3.5 databases, Server Explorer connections to 4.0 databases, via the new Server Tools for VS 2010 SP1, and finally your own 4.0 connections (VS 2010 SP1 not required).


Your “own” connections are indicated with a + sign next to the database icon. In addition, the engine version is displayed.

SQL Editor improvements

The SQL Editor has been enhanced with the following new features:


- Added colored syntax to editor text
- Actual plan button added to editor toolbar
- Query duration added to editor status bar
- Runtime version added to editor status bar

Upgrade to version 4.0 format


An option to upgrade a 3.x database file to version 4 has been added to the “Add SQL Server Compact 4.0 Connection” dialog. More information about the Upgrade api here.

SQL Compact File Version checker



A SQL Server Compact version detection function has been added, to allow you to determine if a given file is version 2, 3.0/3.1, 3,5 or 4.0 database format.

All available SQL Server Compact data types listed


A Data types node with documentation tooltips has been added to the Toolbox tree view.

Enhanced About dialog


About dialog with more detailed SQL Server Compact status information, listing the exact runtime version of the ADO.NET provider in the GAC and detecting if the associated DbProvider is properly registered in machine.config.

As always, please provide feedback, suggestions and reviews at the CodePlex site:


Unknown said...

Fantastic tool Erik.

ErikEJ said...

Thanks, Liam

Javafun said...

When I install this tools, and fire vs2010. It's said Sql Server Campact 3.5 DbProvider - No, how to resolve this issue?

ErikEJ said...

Javafun: (Re)install/repair your SQL Server Compact 3.5 SP2 runtime, as documented here:

Thomas said...

Looks great! Do you plan to create an installer for the standalone app?

ErikEJ said...

Thomas: First I need to update the standalone app, it is very much falling behind the add-in in features? Do you want to contribute?

turquoiseowl said...

Thanks for this.

I've given it a go and got it installed in VS 2010 SP1. However, I'm having a strange problem with the SQL code editor. The problem is that when I paste a SQL statement in from VS or even notepad, it goes in okay but 1) the snytax highlighting is out (e.g. just the S of SELECT is highlighted); and 2) when I try to execute the statement it does nothing just as if the statement was empty. It works fine if I retype the entire statement in directly. Any ideas?

Code it be a charset issue (Unicode/Ansi). The time I pasted in from notepad it was defo Ansi cut onto the clipboard.

ErikEJ said...

Martin: I will look into this, thanks for reporting

turquoiseowl said...

Thanks Erik. With further testing, it appears not to be to do with cut and paste, but simply whether there is anything following the SELECT keyword on the same line. That is, the following won't run:


while this runs fine:

SELECT Count(*)

(though the syntax highlighting is still a bit out on the FROM, with only the F in blue).

It might seem odd to not put anything after the SELECT keyword on the same line, but my practice is to put an indented list of select list clauses on separate lines after the SELECT.

Anyway, now I know how to get it to work, it is a nice tool. I like the way you measure milleseconds which is missing from SSMS. Not too keen on the column formatting which is out on long column names. Grid would be better but I understand that involves more time and this is a freebee.

Thanks you.

ErikEJ said...

Martin: Thanks for investigating, I will look into this. Re column formatting: I used a WPF DataGrid initially, but it performed poorly on largish result sets. If you have any input of how to make it perform, please feel free to contribute on CodePlex.