With the recent release of SQL Server 2014
and SQL Server 2014
, you will notice another change in the output @@VERSION.
The motivation to introduce this change in the
output string is completeness of the string information itself. This has been true over the years, as we have been introducing changes since at least SQL Server 2008 – when we added
labels. We then also added hypervisor related information in SQL Server 2008R2. Now, for SQL Server 2012 and 2014 we are adding
We realize it is common for many SQL Server users asking for assistance in a forum or DL, to post (or be asked to post) the output of @@VERSION. The same also happens with customers calling Microsoft Support. In turn, this allows others (including Microsoft Support Engineers) to understand several important characteristics of the instance, and better contextualize any reply.
We also realize that some scripts rely on parsing @@VERSION to come up with information about a SQL Server instance, and such practice goes back many years. So with each change to @@VERSION, scripts relying on such parsing techniques also needed changes over the years.
For a consistent programmatic access to the same information in the @@VERSION string,
provides all the coverage and does not require string parsing. Scripts relying on SERVERPROPERTY are therefore more resilient to any changes.
for example - this could also be parsed to get information and several scripts rely on this property also.
However, we realize that a user might need to access the components of
separately, in a way that does not require parsing. That is why we are also introducing
properties (see below), but not changing
We are also introducing
, to compliment the information in
, and even
(corresponding KB article) and
(is the build a CU, GDR or OD hotfix) as seen below.
With these additions we achieve better consistency between the @@VERSION string information, and any requirement to retrieve a part of that string, but using SERVERPROPERTY instead.