After more than 260.000 downloads, version 3.7.2 of my SQL Server Compact Toolbox extension for Visual Studio 2013, 2012 and 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. The focus for this release is a number of features that help improve the experience when using the new support for SQL Server Compact 3.5 (supplied by yours truly) in Entity Framework 6.1 and the related Entity Framework 6.1 Tools.
Run “Generate from Model” script without errors
When using the “Generate Database from Model” option in the Entity Data Model Tools, the tool generates a script to DROP and CREATE the generated objects in the database. If you have tried to run the script until now in the SQL Server Compact Toolbox, the script would fail. A new option “Ignore DDL errors” in the Toolbox SQL Editor will allow you to run the script without any errors:
DDEX install requires VS restart
The simple DDEX providers supplied by the Toolbox for VS 2012 and VS 2013 are installed when the Toolbox is activated, and therefore require VS to be restarted to be used. A notification is now available to notify you of this. You can read more about the DDEX providers in my previous blog post here and here.
(Also, notice the new, “modern” icons in the toolbar of the Toolbox.)
Preserve SQL Server date types
A new option is now available to control scripting of the SQL Server date, datetime2 and datetimeoffset data types. The default behaviour is to always convert these column types to datetime (SQL Server Compact does not have these datatypes). But this can cause data loss (as datetime has limited precision) or overflow errors, as datetime only supports dates from 1753 to 9999, unlike date, datetime2 and datetimeoffset, that all support dates from 0001 to 9999.
Improved About dialog
The About dialog has been improved for readability, and contains a counter for the current number of Toolbox downloads:
EDMX generation feature failed if only VS 2012 and not VS 2013 was installed.
"Refresh" of tables, including refresh after schema changes, was broken
Scripting API improvements
- improved SQLCE runtime check
- datetimeoffset columns scripted as datetime by default now, not nvarchar()
- sql_variant and hierarchyid handling improved, to avoid getting wrong ordinal for identity and timestamp
- sqlite indexes are now always given unique names
The scripting API improvements are also included in the latest version of my SQL Compact command line export tool and Scripting API, available here.
As usual, please provide feedback if you have any feature requests, ideas or encounter any issues (or even bugs!!) by using the CodePlex Issue tracker.