Click here to Skip to main content
15,880,427 members
Articles / Database Development / SQL Server

SQL Server CE Query Tool

Rate me:
Please Sign up or sign in to vote.
4.83/5 (63 votes)
9 Sep 2011CPOL6 min read 417.7K   23.5K   168   140
User friendly query designer and data manipulation tool for SQL Server CE

CEQuery-Installer- Click to enlarge image

Introduction

CEQuery was written in C# with the help of the Visual Studio 2008 platform. The new version has been upgraded to VS2010. SQL CE version 4 has been supported in this release. Some of the features of this tool are described below:

  • User is able to create a CE database. If the schema is provided, the tool is able to create the tables and columns.
  • User is able to overview an existing CE database [open with CEQuery by double click on sdf files] with its table and column structure in tree format.
  • User can design a query by dragging and dropping tables and columns from the database tree. The query pane in the tool is able to hold multiple queries provided that only one of those queries is active [as SQL Server CE engine does not support multiple queries in a single statement]. The tool is able to handle multiple query panes in the form of tabs. The query designer of the tool is able to highlight the keywords. The tool is able to handle the execution of the user's selected query.
  • User can manipulate [Insert/Update/Delete] records in a selected table.
  • User is able to generate scripts from a single table or multiple selected tables. [Both for SQL CE andr SQL Server.]
  • User is able to open multiple SQL Server CE files simultaneously.
  • User is able to convert a SQL Server database to an SDF file with schema and data.
  • User is able to change password of a SQL CE database. The tool is now capable of handling a database with no password.
  • User is able to Design CE Tables with Visual Interface.
  • User is able to Design Query with Visual Interface.
  • User is able to execute DB related operations like Validate, Repair, Compact, etc.
  • User is able to Export Query Result.

Background

In one of my projects, I have to use SQL Server CE database rigorously as the application interacts with the local version of the SQL Server CE file for displaying and manipulating data. SQL Server CE 3.5 version has been used in the application. The application is built on the Visual Studio 2005 platform with the support of .NET Framework 2.0. I was initially faced with some problem for querying the SQL Server CE files. Following are the reasons for creating a separate tool for querying a CE database:

  • SQL Server 2005 Management Studio does not support querying SQL Server CE 3.5 or SP1 database for displaying contents and querying data.
  • There are no free tools for querying a CE database available on the internet.
  • The only option to view the content of a CE database file is to install VS 2008 which has built in support for viewing and querying a CE database. But the UI provided for querying a CE database in Visual Studio 2008 is not a user friendly one. We need to type hell lot of things for querying a table. Users who are using SQL Server Management Studio will be very uncomfortable with Visual Studio 2008 for querying a CE database.

So to manage the queries for a CE database, the concept of writing a new tool comes to mind. As SQL Server CE architecture is completely written in C#, there should not be any problem to write a small new tool in a short time period. The main aspects of the tool are as follows:

  • The tool should be able to view the table and column structure in a CE database.
  • User should be able to design a query in less time like dragging and dropping table names and column names in the query pane from the database tree like in SQL Server Management Studio.
  • The tool should be able to create a new blank CE database. If a schema file is provided, the tool should be able to create tables and columns in the database.
  • The user should manipulate data [like Insert/Update/Delete] in any table from the tool.
  • The user should generate a script for an individual table as well as the whole database.
  • The user should be able to place multiple queries in a single query pane. Also she/he should be able to use multiple query panes.
  • The query editor should highlight the keywords in the query so that the user should feel like using SQL Server Management Studio.

Using the Code

A brief description of how to use the article or code has been provided in the help [CEQuery-Help.zip] file attached with this article.

Points of Interest

The following articles were very helpful in terms of learning for me:

This version has also been published in CodePlex. For the codebase of this application please refer to Codeplex Source Safe. Please note the following:

  • For "CEQuery v6 for SQL Server CE 3.5", user does not need to install SQL Server CE 3.5 SP2 separately. Setup.exe will install SQL Server CE 3.5 SP2 if it is not installed. This is targeted at all CPUs.
  • For "SQL Server CE 4.0 ", user needs to install SQL CE 4.0 separately based on the x86 or x64 version of SQL Server CE 4.0. This is targeted at all CPUs.

Improvement in the Latest Version

The latest version of CEQuery has some enhancements as well as bug fixes. The suggestions from users have been the keen interest for posting the new release. Also a new version of codebase and installer which point to SQL Server CE 4 has been attached here with the same functionality. For the CE4 installer, the user does not have to install CE4 separately.

Enhancements

  • New: Enhanced SQL Editor with Undo and Redo
  • New: Export SQL Server database with Windows Authentication support
  • New: Visual Table Editor
  • New: Visual Key Editor
  • New: Visual Query Designer
  • New: Validate and Repair DB
  • New: Compact and Shrink DB
  • New: Automatically upgrades old version database to CE4.
  • New: Double click to open SDF file in CEQuery. This feature has been provided by "Bjørn"

Bug Fixes

  • Bug 1: Bug fix for Byte Array pointed out by "Digitalbeach"
  • Bug 2: Bug Fix for IDENTITY attribute pointed out by "Tony Vaughan"
  • Bug 3: Bug fix for NVARCHAR length out by "John C"

History

  • 08th September, 2011: Updated code base and installer
  • 21st March, 2011: Updated code base and installer
  • 28th February, 2011: Updated code base and installer
  • 30th April, 2009: Updated code base and installer
  • 27th April, 2009: Third release
  • 18th March, 2009: Second release
  • 16th February, 2009: First release

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer
India India
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
GeneralMy vote of 4 Pin
Slacker00714-Mar-11 6:56
professionalSlacker00714-Mar-11 6:56 
GeneralRe: My vote of 4 Pin
ray_mayukh14-Mar-11 7:50
ray_mayukh14-Mar-11 7:50 
GeneralFabulous Pin
Pedros7324-Feb-11 22:54
Pedros7324-Feb-11 22:54 
GeneralRe: Fabulous Pin
ray_mayukh25-Feb-11 0:55
ray_mayukh25-Feb-11 0:55 
GeneralGreat work Pin
Member 767875217-Feb-11 0:47
Member 767875217-Feb-11 0:47 
GeneralRe: Great work Pin
ray_mayukh19-Feb-11 17:52
ray_mayukh19-Feb-11 17:52 
GeneralMy vote of 5 Pin
MukeshTank7-Jan-11 4:59
MukeshTank7-Jan-11 4:59 
GeneralRe: My vote of 5 Pin
ray_mayukh7-Jan-11 5:44
ray_mayukh7-Jan-11 5:44 
GeneralSSCE 4.0 Pin
jpeterson20-Dec-10 16:56
jpeterson20-Dec-10 16:56 
GeneralRe: SSCE 4.0 Pin
ray_mayukh5-Jan-11 4:13
ray_mayukh5-Jan-11 4:13 
GeneralAdding support for System.Byte[] data (eg: image data type) Pin
Digitalbeach22-Nov-10 13:34
Digitalbeach22-Nov-10 13:34 
GeneralRe: Adding support for System.Byte[] data (eg: image data type) Pin
Digitalbeach22-Nov-10 14:01
Digitalbeach22-Nov-10 14:01 
GeneralRe: Adding support for System.Byte[] data (eg: image data type) Pin
ray_mayukh23-Nov-10 6:47
ray_mayukh23-Nov-10 6:47 
GeneralFeature "Convert SQL SERVER to SQL CE" + Query editor Pin
Torsten Tiedt8-Nov-10 11:46
Torsten Tiedt8-Nov-10 11:46 
GeneralRe: Feature "Convert SQL SERVER to SQL CE" + Query editor Pin
ray_mayukh13-Nov-10 8:46
ray_mayukh13-Nov-10 8:46 
GeneralRe: Feature "Convert SQL SERVER to SQL CE" + Query editor Pin
SANJOY SARKAR18-Jan-11 0:31
SANJOY SARKAR18-Jan-11 0:31 
GeneralMy vote of 5 Pin
James Bondzi21-Sep-10 4:35
James Bondzi21-Sep-10 4:35 
GeneralRe: My vote of 5 Pin
ray_mayukh23-Sep-10 3:58
ray_mayukh23-Sep-10 3:58 
GeneralNo way to update table Pin
inamgul28-Aug-10 3:33
inamgul28-Aug-10 3:33 
GeneralRe: No way to update table Pin
ray_mayukh28-Aug-10 22:24
ray_mayukh28-Aug-10 22:24 
GeneralRe: No way to update table Pin
inamgul29-Aug-10 18:24
inamgul29-Aug-10 18:24 
GeneralMy vote of 5 Pin
Eduardo_David11-Jul-10 5:19
Eduardo_David11-Jul-10 5:19 
GeneralRe: My vote of 5 Pin
ray_mayukh11-Jul-10 8:00
ray_mayukh11-Jul-10 8:00 
GeneralThank you very much! Pin
Mancom18-Jun-10 13:12
Mancom18-Jun-10 13:12 
GeneralRe: Thank you very much! Pin
ray_mayukh21-Jun-10 21:46
ray_mayukh21-Jun-10 21:46 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.