Sql Server Data Modeling Tools

SQL Server has several built-in tools that are poorly used by most developers, DBAs and Database Architects. One of my favorites is the Database Diagram tool (which I will call DDs from now on).

20 Sep 2012CPOL
Briefly describing the features in SQL Server Data Tools.

Sql Server Data Modeling Tools

What is SSDT ?

SQL Server Data Tools (SSDT) is a toolset which provides an integrated environment for database developers to carry out all their database design work for any SQL Server platform (both on and off premise) within Visual Studio. Database developers can use the SQL Server Object Explorer in VS to easily create or edit database objects and data, or execute queries.

Database modeling tools

In a previous blog entry I have described on how to install SSDT into the VS environment. During this I will briefly describe few of it’s features.

SSDT’s intention is not to replace the SQL Server Management Studio, but provide a developer a complete development environment, which the developer need not required to leave Visual Studio IDE to do any database related development. The tool does not contain all the features which you find in SSMS, yet it’ll provide sufficient functionality which will required to most of the developers during their development tasks.

I find following features, pretty much interesting and helps to increase the productivity of the developer/team.

1. Design & Code view in a single screen.

Sql Server Data Modeling Tools

Ability to see the design view and the code view in a single screen is a wonderful thing. You do not have to move across screens. And the changes you do to the design view will be affected to the code immediately and vice versa.

2. Ability to add Constraints, Indexes, Foreign Keys and Triggers without changing the screen

Adding constraints, indexes, etc.. are much easier. You can add those by right clicking and choosing the ‘add <object>’ menu like shown below.

3. It uses ‘Declarative – Model Based Development’

What this means is that there is always an in-memory representation of what a database looks like—an SSDT database model— and all the SSDT tools (designers, validations, IntelliSense, schema compare, and so on) operate on that model. This model can be populated by a live connected database (on-premise or SQL Azure), an offline database project under source control, or a point-in-time snapshot taken of an offline database project (you will work with snapshots in the upcoming exercises). But to reiterate, the tools are agnostic to the model’s backing; they work exclusively against the model itself. Thus, you enjoy a rich, consistent experience in any scenario—regardless of whether you’re working with on-premise or cloud databases, offline projects, or versioned snapshots.

4. Connected Development

Although SSDT places great emphasis on the declarative model, it in no way prevents you from working imperatively against live databases when you want or need to. You can open query windows to compose and execute T-SQL statements directly against a connected database, with the assistance of a debugger if desired, just as you can in SSMS.

5. Disconnected Development

The new SQL Server Object Explorer lets you connect to and interact with any database right from inside Visual Studio. But SSDT offers a great deal more than a mere replacement for the connected SSMS experience. It also delivers a rich offline experience with the new SQL Server Database Project type and local database runtime (LocalDB).

Actually this is one great feature it has. Because due to many reasons, most of the time we are requested to work offline, or to do our development locally and later on merged. So this feature allows us to maintain a local database and do all the development using that. And later on merged/published to other database. And by doing a schema comparison, it’s possible to find out the changes we have done.

Sql

6. Schema Comparison

This is a very valuable feature. This allows us to do a schema comparison between our development environment and the physical database (or vice versa) and find out the changes very quickly.

7. Saving snapshots of the Database

Sometimes it’s required to keep snapshots of your database at different stages of the development. And the best thing is, it even allows you to compare between two database snapshots. So it’s easy to see the changes you have done compared to the previous stages.

8. Ability to find any errors or reference issues in design time

When SSDT is used it’s easy to identify any syntax issue or any reference issue before deploying it to the database. E.g. assume we have one view which is referring to few columns of a table. Usually if someone change or remove any columns from the table which this view is referring, there is no way of identify that, till the view is used in our application. But when SSDT is used, it will show you these issues, when building the project. So these can be eliminated before we apply these to the deployment server.

These are some features which I have found very interesting and most developers would expect. But having said that I am not saying it’s the complete set of features. There are a few missing functionalities which I felt would have been even nicer, if those were there.

And you can find a good article in here: (http://www.codeproject.com/Articles/357905/Evaluating-SQL-Server-Data-Tools) regarding SSDT. You can find things in more depth.

So far, I have tried manyonline tools. However, I will list you some of the tools that helped me a lot.

AquaData Studio ER Modeler

A free 14-day evaluation copycan be downloaded. The purchase price includes 12-month support. After thefirst year, support can purchased for 35% of the original license price.

'Discounted licences areavailable for qualified Academic users and free licenses are available forqualified Open Source Software (OSS) Developers.'

Free Sql Server Data Modeling

Price: $400

Dezign

A recent upgrade offerssignificantly improved features. Supports Forward and Reverse Engineering forabout 20 different Databases.

Price: Offers a Free downloador starts at $259 to buy.

Data Modeling Tools For Azure Sql Server

SQLDBM offers you an easy, convenientway to design your database absolutely anywhere on any browser, working awaywithout need for any extra database engine or database modelling tools or apps.Use SQLDBM to design and manage both large and small databases and data modelson the fly. All while incorporating any needed database rules and objects suchas database keys, schemas, indexes, column constraints and relationships.

What Is Data Modeling

Price: Free