Daily Denali Delight – Day 2


Code-named Denali – the next version of SQL Server is fast approaching.

And whenever CTP2 gets released you can be sure to expect some excellent new features.

Over the next week or so, I aim to delve into these delights, highlighting those to look out for.

Day 2 – Contained Databases

What are contained databases ? I’m sure I’ve heard that phrase bantered around in different areas of SQL Server for many years ??

Contained Databases, the new feature of Denali, are supposed to make it easier for us to move our databases between different instances of SQL Server.

The official MSDN explanation :

“A contained database includes all database settings and metadata required to define the database and has no configuration dependencies on the instance of the SQL Server Database Engine where the database is installed. Users can connect to the database without authenticating a login at the Database Engine level. Isolating the database from the Database Engine makes it possible to easily move the database to another instance of SQL Server. Including all the database settings in the database enables database owners to manage all the configuration settings for the database.”

Sounds great ! no need for logins for a particular instance.

Whereas previously, if you wanted port a database, e.g. from your development environment to porduction, you would have to cater for things like logins or create scripts to recreate the database on the server, or you could simply back it up and restore it to the other server.

Data-Tier Applications went some way to resolving this problem in SQL 2008 but now Denali gives you the option to wrap databases up as self-contained entities – with no need to rely on server-level objects at all.

Read the MSDN article for more details.