SQL Server Deprecated &
Discontinued Features
Upgrading with Ease!
Nancy Hidy Wilson
T-Systems, North America
SQLSat461 – Nancy Hidy Wilson
Thank the Sponsors & Volunteers!
Visit the sponsors between sessions or
during lunch
We can’t provide this FREE training without
them!
BTW – Speakers are volunteers, too!
SQLSat461 – Nancy Hidy Wilson
My Goal
Introduce “Backward Compatibility” issues for
your consideration when upgrading the SQL
Server Database Engine.
Introduce tools to help you identify “Backward
Compatibility” issues.
SQLSat461 – Nancy Hidy Wilson
Agenda
4 |
Terminology
Discontinued Features
Deprecated Features
Tools
Resources
SQLSat461 – Nancy Hidy Wilson
Terminology
Backward Compatibility
5 |
Deprecated features
Discontinued features
Breaking changes
Behavior changes
SQLSat461 – Nancy Hidy Wilson
Terminology
Deprecated
The New Oxford American Dictionary - the verb
“deprecate” means to “express disapproval of”.
Microsoft – indicates feature will be removed in a
future version and will not be enhanced.
May have a new syntax to which to convert
May not have any replacement
SQLSat461 – Nancy Hidy Wilson
Terminology
Discontinued
Features are no longer available
SQLSat461 – Nancy Hidy Wilson
Terminology
Breaking Changes
Changes which might break applications, scripts,
or functionalities that are based on earlier
versions of SQL Server.
Example: removal of a column from a system
catalog view or DMV
SQLSat461 – Nancy Hidy Wilson
Terminology
Behavior Changes
Changes which affect how features work or
interact as compared to earlier versions of SQL
Server.
Example: a change in the message or data
returned by a system stored procedure
SQLSat461 – Nancy Hidy Wilson
Discontinued Features
Immediate Concern.
Must replace before
upgrading.
SQLSat461 – Nancy Hidy Wilson
Discontinued Features in SQL 2008(R2)
Feature
Replacement
60, 65, and 70 compatibility levels
80 compatibility level minimum
DUMP statement
BACKUP
LOAD statement
RESTORE
BACKUP LOG WITH NO_LOG
None
BACKUP LOG WITH
TRUNCATE_ONLY
None
BACKUP TRANSACTION
BACKUP LOG
sp_addgroup, sp_changegroup,
sp_dropgroup, sp_helpgroup
Use roles
Surface Area Configuration tool
Various tools and properties (e.g.
PBM, SSMS exposed properties)
Web Assistant procedures
Use SSRS
SQLSat461 – Nancy Hidy Wilson
Discontinued Features in SQL 2012
Feature
Replacement
80 compatibility levels
90 compatibility level minimum
BACKUP { DATABASE | LOG } WITH { None
PASSWORD | MEDIAPASSWORD }
WITH APPEND clause on triggers
Re-create the whole trigger
sp_dboption
ALTER DATABASE
DATABASEPROPERTY
DATABASEPROPERTYEX
SQL Server Distributed Management
Objects (SQL-DMO)
SQL Server Management Objects
(SMO)
FASTFIRSTROW hint
OPTION (FAST n)
sys.database_principal_aliases
Use roles instead of aliases
SQL Mail
Use Database Mail
SQLSat461 – Nancy Hidy Wilson
Discontinued Features in SQL 2012
Feature
Replacement
RAISERROR in the format
RAISERROR integer 'string'
Rewrite with current RAISERROR(…)
syntax.
COMPUTE / COMPUTE BY
Use ROLLUP
Use of *= and =*
Use ANSI join syntax
Support for migrating or running Data
Transformation Services (DTS)
packages
None. Rewrite as SSIS Packages.
VIA Protocol
Use TCP
SQLSat461 – Nancy Hidy Wilson
Discontinued Features in SQL 2014
Feature
Replacement
90 compatibility levels
100 compatibility level minimum
When a database with a compatibility
level of less than 100 is upgraded to
SQL Server 2014, the compatibility
level of the database is set to 100
during the upgrade operation.
SQLSat461 – Nancy Hidy Wilson
Deprecated Features
Plan Ahead!
Replace or quit
using as soon as
possible!
SQLSat461 – Nancy Hidy Wilson
Deprecated Features in SQL 2008(R2)
Feature
Replacement
ADHelper service
None
SOAP/HTTP endpoints with CREATE
ENDPOINT and ALTER ENDPOINT
Windows Communications Foundation
(WCF) or ASP.NET
sys.soap_endpoints &
sys.endpoint_webmethods
Windows Communications Foundation
(WCF) or ASP.NET
Address Windowing Extensions (AWE) Use a 64-bit operating system to use
support that allows 32-bit operating
over 4 GB of physical memory.
systems to use over 4 GB of physical
memory
sp_dropalias
SQLSat461 – Nancy Hidy Wilson
Replace aliases with a combination of
user accounts and database roles.
Use sp_dropalias to remove aliases in
upgraded databases
Deprecated Features in SQL 2008(R2)
Feature
Replacement
sqlmaint Utility
SQL Server Maintenance Plans
SET ROWCOUNT for INSERT,
UPDATE, and DELETE statements
Use TOP keyword
Remote server stored procs and
@@remserver variable
Replace remote servers by using
linked servers
Data types:
•text
•ntext
•Image
Use varchar(max), nvarchar(max), and
varbinary(max) data types.
Many system stored procs (e.g.
sp_attach_db, sp_drop_user,
sp_change_users_login)
Equivalent CREATE, ALTER, DROP TSQL statements
Extended Stored Procedure
Programming
Use CLR Integration instead
SQLSat461 – Nancy Hidy Wilson
Deprecated Features in SQL 2008(R2)
Feature
Replacement
DBCC DBREINDEX
REBUILD option of ALTER INDEX
DBCC INDEXDEFRAG
REORGANIZE option of ALTER
INDEX
DBCC SHOWCONTIG
sys.dm_db_index_physical_stats
DBCC PINTABLE
DBCC UNPINTABLE
Has no effect
fn_get_sql
sys.dm_exec_sql_text
Ability to return result sets from
triggers
None
Specifying the SQLOLEDB provider
for linked servers.
SQL Server Native Client (SQLNCLI)
SETUSER
EXECUTE AS
RC4 and DESX encryption algorithms
Use another algorithm such as AES.
SQLSat461 – Nancy Hidy Wilson
Deprecated Features in SQL 2008(R2)
Feature
Replacement
SQLAgent:
• net send & Pager notification
• ActiveX subsystem
Replace with:
• E-mail notification
• Command or PowerShell scripts
System table compatibility view (e.g.
sysdatabases, syslogins)
The compatibility views do not expose
metadata for features that were
introduced in SQL Server 2005+. We
recommend that you upgrade your
applications to use catalog views.
fn_virtualservernodes
fn_servershareddrives
sys.dm_os_cluster_nodes
sys.dm_io_cluster_shared_drives
A string enclosed in quotation marks
used as a column alias for an
expression in a SELECT list:
'string_alias' = expression
expression [AS] column_alias
expression [AS] [column_alias]
expression [AS] "column_alias"
expression [AS] 'column_alias'
column_alias = expression
SQLSat461 – Nancy Hidy Wilson
Deprecated Features in SQL 2008(R2)
Feature
Replacement
Not ending Transact-SQL statements
with a semicolon.
End Transact-SQL statements with a
semicolon ( ; ).
GROUP BY ALL
Use custom case-by-case solution
with UNION or derived table.
Use of #, ## as temporary table and
temporary stored procedure names.
Use at least one additional character.
Use of @, @@, or @@ as TransactSQL identifiers.
Do not use @ or @@ or names that
begin with @@ as identifiers
Use of DEFAULT keyword as default
value.
Do not use the word DEFAULT as a
default value
Specifying table hints without using
the WITH keyword.
Use WITH.
SQLSat461 – Nancy Hidy Wilson
Deprecated Features in SQL 2012
Feature
Replacement
Slipstream using /PCUSource and
/CUSource
Product Updates - /UpdateSource
database mirroring
c2 audit option
AlwaysOn Availability Groups
If your edition of SQL Server does not
support AlwaysOn Availability Groups,
use log shipping.
common criteria compliance enabled
Server Configuration Option
INSERT_HINTS
RESTORE { DATABASE | LOG }
WITH [MEDIA]PASSWORD
Database compatibility level 100
SQLSat461 – Nancy Hidy Wilson
None
Plan to upgrade the database and
application for a future release.
Deprecated Features in SQL 2012
Feature
Replacement
default trace enabled option
Extended Events
SQL Server Profiler for Trace Capture;
trace stored procs, functions, and
catalog views
Use Extended Events Profiler
embedded in SQL Server
Management Studio
SQL Server Profiler for Trace Replay
SQL Server Distributed Replay
Microsoft.SqlServer.Management.Trac • Trace Configuration:
e namespace (contains the APIs for
Microsoft.SqlServer.Management.X
SQL Server Trace and Replay objects)
Event
• Trace Reading:
Microsoft.SqlServer.XEvent.Linq
• Trace Replay: None
SQLSat461 – Nancy Hidy Wilson
Deprecated Features in SQL 2014
Feature
Replacement
Upgrade from Database Compatibility
Level 90
In SQL Server 2014, you can upgrade
a SQL Server 2005 database, but the
compatibility level is updated from 90
to 100 during the upgrade operation.
SQLSat461 – Nancy Hidy Wilson
Tools
Upgrade Advisor
SQL 2005 – SQL Profiler Event Classes:
Deprecation Announcement
Deprecation Final Support
SQL 2008+ - Extended Events
SQL 2008+ - Performance Counter DMV:
SELECT * FROM sys.dm_os_performance_counters
WHERE [object_name] LIKE '%:Deprecated%'
AND [cntr_value] > 0;
SQLSat461 – Nancy Hidy Wilson
Demo
SQLSat461 – Nancy Hidy Wilson
Resources
Backward Compatibility issues documented for each
SQL Server version:
o 2000: http://msdn.microsoft.com/enus/library/aa176543(SQL.80).aspx
o 2005: http://msdn.microsoft.com/enus/library/ms143232(SQL.90).aspx
o 2008: http://msdn.microsoft.com/enus/library/cc280407(v=SQL.100).aspx
o 2008R2: http://msdn.microsoft.com/enus/library/cc280407(V=SQL.105).aspx
o 2012: http://msdn.microsoft.com/enus/library/cc280407(V=SQL.110).aspx
o 2014: http://msdn.microsoft.com/enus/library/cc280407(V=SQL.120).aspx
SQLSat461 – Nancy Hidy Wilson
Contact Info
Nancy Hidy Wilson
Email: [email protected]
Twitter: @NancyHidyWilson
Blog: http://NancyHidyWilson.wordpress.com
SQLSat461 – Nancy Hidy Wilson
Demo – Backup Slides
In case of unreliable network during presentation
To help you remember
Scripts included in zip file
SQLSat461 – Nancy Hidy Wilson
Demo 1 – SQL 2008R2 - DMV
SQLSat461 – Nancy Hidy Wilson
Demo 2 – SQL 2008R2 - Encryption
SQLSat461 – Nancy Hidy Wilson
Demo 3 – SQL 2008R2 – Before/After 1
SQLSat461 – Nancy Hidy Wilson
Demo 3 – SQL 2008R2 – Before/After 2
SQLSat461 – Nancy Hidy Wilson
Demo 3 – SQL 2008R2 – Before/After 3
SQLSat461 – Nancy Hidy Wilson
Demo 3 – SQL 2008R2 – Before/After 4
SQLSat461 – Nancy Hidy Wilson
Demo 4 – SQL 2008R2 - Trace
SQLSat461 – Nancy Hidy Wilson
Demo 1 – SQL 2012 - DMV
SQLSat461 – Nancy Hidy Wilson
Demo 2 – SQL 2012 - Encryption
SQLSat461 – Nancy Hidy Wilson
Demo 3 – SQL 2012 – Before/After 1
SQLSat461 – Nancy Hidy Wilson
Demo 3 – SQL 2012 – Before/After 2
SQLSat461 – Nancy Hidy Wilson
Demo 3 – SQL 2012 – Before/After 3
SQLSat461 – Nancy Hidy Wilson
Demo 3 – SQL 2012 – Before/After 4
SQLSat461 – Nancy Hidy Wilson
Demo 4 – SQL 2012 - Trace
SQLSat461 – Nancy Hidy Wilson
© Copyright 2026 Paperzz