Like many of Microsoftâ€™s recent software products (Visual Studio .Net, .Net Framework or C# 3.0) SQL Server 2008 has been enhanced based previous versions by fixing bugs and adding new functionality built based on existing features. This is a welcome strategy that helps ease the transition for developers and database administrators.
In this blog post I will briefly touch on some of the database administrator functions and focus on the developer functionality, additions and upgrades.
SQL Server 2008 policy management has been updated and is now called the â€˜Declarative Management Frameworkâ€™. It is now possible to configure multiple database servers so that a standard configuration can be applied and maintained on multiple servers and databases.
Multiple Server Integration makes it possible to execute queries against multiple servers by placing them within special groups. Result can be categorised into one result per server or merged together as one set of results.
Security (Transparent Data Encryption)
A cool new feature of SQL Server 2008 is the improved flexibility of data encryption. Data encryption is now a property of the database instead of application code. This makes the database administrator and developerâ€™s lifeâ€™s easier as now they donâ€™t have to make changes to the database every time encryption functionality changes at the application level.
Database administrators can now specify how much CPU/RAM each user is allowed to use. This will help to eliminate situations where a userâ€™s mistake could potentially bring down a whole server. By imposing these limitations users are restricted to a predefined amount of CPU/RAM usage.
Developers have also been treated to some appealing updates in the latest version SQL Server. There are a number of new features that have been added to make a developerâ€™s life easier and increase their productivity.
LINQ Vs SQL
Most developers are pretty familiar with writing T-SQL queries to retrieve data for application objects. Most are also aware of the distinct syntactical differences between VB/C# and T-SQL. SQL Server 2008 provides something called the LINQ to SQL provider, which makes it possible to write LINQ commands directly within SQL Server. This lets develops use one common object centric language in the application domain and the database domain. Developers will be able to use the LINQ programming syntax on database table and application collection, XML and datasets.
DATETIME Data Type
Datetime has now been separated into two separate data types so that each one can be defined independently. These new data types will help increase performance by eliminating the need to perform certain operations to extract the date or time portion of the Datetime data type.
GEOGRAPHY and GEOMETRY
These two additions have been added to better represent location specific data. This eliminates the need to break geography and geometry data down into formats that fit other standard data types.
The SQL language has had some small additions in the shape of Inline Variable Declarations:
DECLARE @myVar int
SET @myVar = 5
DECLARE @myVar int = 5
C like math syntax
SET @i += 5
Icing on the cake
SQL Server 2008 had been blessed with Intellisense. All I can say is â€œabout time tooâ€. Gone are the days where you would have to do a Google search to remind yourself of certain T-SQL keywords, statements or syntax. Now SQL Server will give youâ€™re a full list of statements and keywords available for a particular variableâ€™s data type as well as column names for a particular table.
SQL Server offers some interesting new features that will keep developers and administrators happy. These new features integrate well with Visual Studio and the .Net framework 3.5 making SQL Server a nice finishing touch to a well rounded application development environment.