Deprecated Database Engine Features in SQL Server 2016

 

Updated: May 3, 2016

Applies To: SQL Server 2016

THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

This topic describes the deprecated SQL Server Database Engine features that are still available in SQL Server 2016. These features are scheduled to be removed in a future release of SQL Server. Deprecated features should not be used in new applications.

You can monitor the use of deprecated features by using the SQL Server Deprecated Features Object performance counter and trace events. For more information, see Use SQL Server Objects.

The value of these counters are also available by executing the following statement:

SELECT * FROM sys.dm_os_performance_counters   
WHERE object_name = 'SQLServer:Deprecated Features';  

The following SQL Server Database Engine features will not be supported in the next version of SQL Server. Do not use these features in new development work, and modify applications that currently use these features as soon as possible. The Feature name value appears in trace events as the ObjectName and in performance counters and sys.dm_os_performance_counters as the instance name. The Feature ID value appears in trace events as the ObjectId.

CategoryDeprecated featureReplacementFeature nameFeature ID
Backup and RestoreRESTORE { DATABASE | LOG } WITH [MEDIA]PASSWORD continues to be deprecated. BACKUP { DATABASE | LOG } WITH PASSWORD and BACKUP { DATABASE | LOG } WITH MEDIAPASSWORD are discontinued.None.BACKUP DATABASE or LOG WITH PASSWORD

BACKUP DATABASE or LOG WITH MEDIAPASSWORD
104

103
Compatibility levelsUpgrade from version 110 (SQL Server 2008 and SQL Server 2008 R2).Compatibility levels are only available for the last two versions. For more information about compatibility levels, see ALTER DATABASE Compatibility Level (Transact-SQL).Database compatibility level 100108
Database objectsAbility to return result sets from triggersNoneReturning results from trigger12
EncryptionEncryption using RC4 or RC4_128 is deprecated and is scheduled to be removed in the next version. Decrypting RC4 and RC4_128 is not deprecated.Use another encryption algorithm such as AES.Deprecated encryption algorithm253
Remote serverssp_addremotelogin

sp_addserver

sp_dropremotelogin

sp_helpremotelogin

sp_remoteoption
Replace remote servers by using linked servers. sp_addserver can only be used with the local option.sp_addremotelogin

sp_addserver

sp_dropremotelogin

sp_helpremotelogin

sp_remoteoption
70

69

71

72

73
Remote servers@@remserverReplace remote servers by using linked servers.NoneNone
Remote serversSET REMOTE_PROC_TRANSACTIONSReplace remote servers by using linked servers.SET REMOTE_PROC_TRANSACTIONS110
Set optionsSET ROWCOUNT for INSERT, UPDATE, and DELETE statementsTOP keywordSET ROWCOUNT109
Table hintsHOLDLOCK table hint without parenthesis.Use HOLDLOCK with parenthesis.HOLDLOCK table hint without parenthesis167
Toolssqlmaint UtilityUse the SQL Server maintenance plan featureNoneNone

The following SQL Server Database Engine features are supported in the next version of SQL Server, but will be removed in a later version. The specific version of SQL Server has not been determined.

CategoryDeprecated featureReplacementFeature nameFeature ID
Compatibility levelssp_dbcmptlevelALTER DATABASE … SET COMPATIBILITY_LEVEL. For more information, see ALTER DATABASE Compatibility Level (Transact-SQL).sp_dbcmptlevel80
Compatibility levelsDatabase compatibility level 110 and 120.Plan to upgrade the database and application for a future release.Database compatibility level 110

Database compatibility level 120
XMLInline XDR Schema GenerationThe XMLDATA directive to the FOR XML option is deprecated. Use XSD generation in the case of RAW and AUTO modes. There is no replacement for the XMLDATA directive in EXPLICT mode.XMLDATA181
Backup and restoreBACKUP { DATABASE | LOG } TO TAPE

BACKUP { DATABASE | LOG } TO device_that_is_a_tape
BACKUP { DATABASE | LOG } TO DISK

BACKUP { DATABASE | LOG } TO device_that_is_a_disk
BACKUP DATABASE or LOG TO TAPE235
Backup and restoresp_addumpdevice'tape'sp_addumpdevice'disk'ADDING TAPE DEVICE236
Backup and restoresp_helpdevicesys.backup_devicessp_helpdevice100
CollationsKorean_Wansung_Unicode

Lithuanian_Classic

SQL_AltDiction_CP1253_CS_AS
None. These collations exist in SQL Server 2005, but are not visible through fn_helpcollations.Korean_Wansung_Unicode

Lithuanian_Classic

SQL_AltDiction_CP1253_CS_AS
191

192

194
CollationsHindi

Macedonian
These collations exist in SQL Server 2005 and higher, but are not visible through fn_helpcollations. Use Macedonian_FYROM_90 and Indic_General_90 instead.Hindi

Macedonian
190

193
CollationsAzeri_Latin_90

Azeri_Cyrilllic_90
Azeri_Latin_100

Azeri_Cyrilllic_100
Azeri_Latin_90

Azeri_Cyrilllic_90
232

233
ConfigurationSET ANSI_NULLS OFF and ANSI_NULLS OFF database option

SET ANSI_PADDING OFF and ANSI_PADDING OFF database option

SET CONCAT_NULL_YIELDS_NULL OFF and CONCAT_NULL_YIELDS_NULL OFF database option

SET OFFSETS
None.

ANSI_NULLS, ANSI_PADDING and CONCAT_NULLS_YIELDS_NULL will always be set to ON. SET OFFSETS will be unavailable.
SET ANSI_NULLS OFF

SET ANSI_PADDING OFF

SET CONCAT_NULL_YIELDS_NULL OFF

SET OFFSETS

ALTER DATABASE SET ANSI_NULLS OFF

ALTER DATABASE SET ANSI_PADDING OFF

ALTER DATABASE SET CONCAT_NULL_YIELDS_NULL OFF
111

113

112

36

111

113

112
Data typessp_addtype

sp_droptype
CREATE TYPE

DROP TYPE
sp_addtype

sp_droptype
62

63
Data typestimestamp syntax for rowversion data typerowversion data type syntaxTIMESTAMP158
Data typesAbility to insert null values into timestamp columns.Use a DEFAULT instead.INSERT NULL into TIMESTAMP columns179
Data types'text in row' table optionUse varchar(max), nvarchar(max), and varbinary(max) data types. For more information, see sp_tableoption (Transact-SQL).Text in row table option9
Data typesData types:

 text

 ntext

 image
Use varchar(max), nvarchar(max), and varbinary(max) data types.Data types: text, ntext or image4
Database managementsp_attach_db

sp_attach_single_file_db
CREATE DATABASE statement with the FOR ATTACH option. To rebuild multiple log files, when one or more have a new location, use the FOR ATTACH_REBUILD_LOG option.sp_attach_db

sp_attach_single_file_db
81

82
Database objectsCREATE DEFAULT

DROP DEFAULT

sp_bindefault

sp_unbindefault
DEFAULT keyword in CREATE TABLE and ALTER TABLECREATE_DROP_DEFAULT

sp_bindefault

sp_unbindefault
162

64

65
Database objectsCREATE RULE

DROP RULE

sp_bindrule

sp_unbindrule
CHECK keyword in CREATE TABLE and ALTER TABLECREATE_DROP_RULE

sp_bindrule

sp_unbindrule
161

66

67
Database objectssp_change_users_loginUse ALTER USER.sp_change_users_login231
Database objectssp_dependssys.dm_sql_referencing_entities and sys.dm_sql_referenced_entitiessp_depends19
Database objectssp_renamedbMODIFY NAME in ALTER DATABASEsp_renamedb79
Database objectssp_getbindtokenUse MARS or distributed transactions.sp_getbindtoken98
Database optionssp_bindsessionUse MARS or distributed transactions.sp_bindsession97
Database optionssp_resetstatusALTER DATABASE SET { ONLINE | EMERGENCY }sp_resetstatus83
Database optionsTORN_PAGE_DETECTION option of ALTER DATABASEPAGE_VERIFY TORN_PAGE_DETECTION option of ALTER DATABASEALTER DATABASE WITH TORN_PAGE_DETECTION102
DBCCDBCC DBREINDEXREBUILD option of ALTER INDEX.DBCC DBREINDEX11
DBCCDBCC INDEXDEFRAGREORGANIZE option of ALTER INDEXDBCC INDEXDEFRAG18
DBCCDBCC SHOWCONTIGsys.dm_db_index_physical_statsDBCC SHOWCONTIG10
DBCCDBCC PINTABLE

DBCC UNPINTABLE
Has no effect.DBCC [UN]PINTABLE189
Extended propertiesLevel0type = 'type' and Level0type = 'USER' to add extended properties to level-1 or level-2 type objects.Use Level0type = 'USER' only to add an extended property directly to a user or role.

Use Level0type = 'SCHEMA' to add an extended property to level-1 types such as TABLE or VIEW, or level-2 types such as COLUMN or TRIGGER. For more information, see sp_addextendedproperty (Transact-SQL).
EXTPROP_LEVEL0TYPE

EXTPROP_LEVEL0USER
13

14
Extended stored procedure programmingsrv_alloc

srv_convert

srv_describe

srv_getbindtoken

srv_got_attention

srv_message_handler

srv_paramdata

srv_paraminfo

srv_paramlen

srv_parammaxlen

srv_paramname

srv_paramnumber

srv_paramset

srv_paramsetoutput

srv_paramstatus

srv_paramtype

srv_pfield

srv_pfieldex

srv_rpcdb

srv_rpcname

srv_rpcnumber

srv_rpcoptions

srv_rpcowner

srv_rpcparams

srv_senddone

srv_sendmsg

srv_sendrow

srv_setcoldata

srv_setcollen

srv_setutype

srv_willconvert

srv_wsendmsg
Use CLR Integration instead.XP_API20
Extended stored procedure programmingsp_addextendedproc

sp_dropextendedproc

sp_helpextendedproc
Use CLR Integration instead.sp_addextendedproc

sp_dropextendedproc

sp_helpextendedproc
94

95

96
Extended stored proceduresxp_grantlogin

xp_revokelogin

xp_loginConfig
Use CREATE LOGIN

Use DROP LOGIN IsIntegratedSecurityOnly argument of SERVERPROPERTY
xp_grantlogin

xp_revokelogin

xp_loginconfig
44

45

59
Functionsfn_get_sqlsys.dm_exec_sql_textfn_get_sql151
Hash algorithmsThe MD2, MD4, MD5, SHA, and SHA1 algorithms. These are not available under compatibility level 130.Use SHA2_256 or SHA2_512.Deprecated hash algorithm
High availabilitydatabase mirroringAlways On Availability Groups

If your edition of SQL Server does not support Always On Availability Groups, use log shipping.
DATABASE_MIRRORING267
Index optionssp_indexoptionALTER INDEXsp_indexoption78
Index optionsCREATE TABLE, ALTER TABLE, or CREATE INDEX syntax without parentheses around the options.Rewrite the statement to use the current syntax.INDEX_OPTION33
Instance optionssp_configure option 'allow updates'System tables are no longer updatable. Setting has no effect.sp_configure 'allow updates'173
Instance optionssp_configure options:

'locks'

'open objects'

'set working set size'
Now automatically configured. Setting has no effect.sp_configure 'locks'

sp_configure 'open objects'

sp_configure 'set working set size'
174

175

176
Instance optionssp_configure option 'priority boost'System tables are no longer updatable. Setting has no effect. Use the Windows start /high … program.exe option instead.sp_configure 'priority boost'199
Instance optionssp_configure option 'remote proc trans'System tables are no longer updatable. Setting has no effect.sp_configure 'remote proc trans'37
Linked serversSpecifying the SQLOLEDB provider for linked servers.SQL Server Native Client (SQLNCLI)SQLOLEDDB for linked servers19
Lockingsp_locksys.dm_tran_lockssp_lock99
MetadataFILE_ID

INDEXKEY_PROPERTY
FILE_IDEX

sys.index_columns
FILE_ID

INDEXKEY_PROPERTY
15

17
Native XML Web ServicesThe CREATE ENDPOINT or ALTER ENDPOINT statement with the FOR SOAP option.

sys.endpoint_webmethods

sys.soap_endpoints
Use Windows Communications Foundation (WCF) or ASP.NET instead.CREATE/ALTER ENDPOINT

sys.endpoint_webmethods

EXT_soap_endpoints

sys.soap_endpoints
21

22

23
Removable databasessp_certify_removable

sp_create_removable
sp_detach_dbsp_certify_removable

sp_create_removable
74

75
Removable databasessp_dbremoveDROP DATABASEsp_dbremove76
SecurityThe ALTER LOGIN WITH SET CREDENTIAL syntaxReplaced by the new ALTER LOGIN ADD and DROP CREDENTIAL syntaxALTER LOGIN WITH SET CREDENTIAL230
Securitysp_addapprole

sp_dropapprole
CREATE APPLICATION ROLE

DROP APPLICATION ROLE
sp_addapprole

sp_dropapprole
53

54
Securitysp_addlogin

sp_droplogin
CREATE LOGIN

DROP LOGIN
sp_addlogin

sp_droplogin
39

40
Securitysp_adduser

sp_dropuser
CREATE USER

DROP USER
sp_adduser

sp_dropuser
49

50
Securitysp_grantdbaccess

sp_revokedbaccess
CREATE USER

DROP USER
sp_grantdbaccess

sp_revokedbaccess
51

52
Securitysp_addrole

sp_droprole
CREATE ROLE

DROP ROLE
sp_addrole

sp_droprole
56

57
Securitysp_approlepassword

sp_password
ALTER APPLICATION ROLE

ALTER LOGIN
sp_approlepassword

sp_password
55

46
Securitysp_changeobjectownerALTER SCHEMA or ALTER AUTHORIZATIONsp_changeobjectowner58
Securitysp_control_dbmasterkey_passwordA master key must exist and password must be correct.sp_control_dbmasterkey_password274
Securitysp_defaultdb

sp_defaultlanguage
ALTER LOGINsp_defaultdb

sp_defaultlanguage
47

48
Securitysp_denylogin

sp_grantlogin

sp_revokelogin
ALTER LOGIN DISABLE

CREATE LOGIN

DROP LOGIN
sp_denylogin

sp_grantlogin

sp_revokelogin
42

41

43
SecurityUSER_IDDATABASE_PRINCIPAL_IDUSER_ID16
Securitysp_srvrolepermission

sp_dbfixedrolepermission
These stored procedures return information that was correct in SQL Server 2000. The output does not reflect changes to the permissions hierarchy implemented in SQL Server 2008. For more information, see Permissions of Fixed Server Roles.sp_srvrolepermission

sp_dbfixedrolepermission
61

60
SecurityGRANT ALL

DENY ALL

REVOKE ALL
GRANT, DENY, and REVOKE specific permissions.ALL Permission35
SecurityPERMISSIONS intrinsic functionQuery sys.fn_my_permissions instead.PERMISSIONS170
SecuritySETUSEREXECUTE ASSETUSER165
SecurityRC4 and DESX encryption algorithmsUse another algorithm such as AES.DESX algorithm238
SET optionsSET FMTONLYsys.dm_exec_describe_first_result_set (Transact-SQL), sys.dm_exec_describe_first_result_set_for_object (Transact-SQL), sp_describe_first_result_set (Transact-SQL), and sp_describe_undeclared_parameters (Transact-SQL).SET FMTONLY250
Server Configuration Optionsc2 audit option

default trace enabled option
common criteria compliance enabled Server Configuration Option

 Extended Events
sp_configure 'c2 audit mode'

sp_configure 'default trace enabled'
252

253
SMO classesMicrosoft.SQLServer.Management.Smo.Information class

 Microsoft.SQLServer.Management.Smo.Settings class

 Microsoft.SQLServer.Management.Smo.DatabaseOptions class

 Microsoft.SqlServer.Management.Smo.DatabaseDdlTrigger.NotForReplication property
Microsoft.SqlServer.Management.Smo.Server class

 Microsoft.SqlServer.Management.Smo.Server class

 Microsoft.SqlServer.Management.Smo.Database class

None
NoneNone
SQL Server Agentnet send notification

Pager notification

ActiveX subsystem
E-mail notification

E-mail notification

Command or PowerShell scripts
NoneNone
SQL Server Management StudioSolution Explorer integration in SQL Server Management Studio

Source Control integration in SQL Server Management Studio
NoneNone
System Stored Proceduressp_db_increased_partitionsNone. Support for increased partitions is available by default in SQL Server 2016.sp_db_increased_partitions253
System tablessysaltfiles

syscacheobjects

syscolumns

syscomments

sysconfigures

sysconstraints

syscurconfigs

sysdatabases

sysdepends

sysdevices

sysfilegroups

sysfiles

sysforeignkeys

sysfulltextcatalogs

sysindexes

sysindexkeys

syslockinfo

syslogins

sysmembers

sysmessages

sysobjects

sysoledbusers

sysopentapes

sysperfinfo

syspermissions

sysprocesses

sysprotects

sysreferences

sysremotelogins

sysservers

systypes

sysusers
Compatibility views. For more information, see Compatibility Views (Transact-SQL).

 ** Important ** 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. For more information, see Catalog Views (Transact-SQL).
sysaltfiles

syscacheobjects

syscolumns

syscomments

sysconfigures

sysconstraints

syscurconfigs

sysdatabases

sysdepends

sysdevices

sysfilegroups

sysfiles

sysforeignkeys

sysfulltextcatalogs

sysindexes

sysindexkeys

syslockinfo

syslogins

sysmembers

sysmessages

sysobjects

sysoledbusers

sysopentapes

sysperfinfo

syspermissions

sysprocesses

sysprotects

sysreferences

sysremotelogins

sysservers

systypes

sysusers
141

None

133

126

146

131

147

142

123

144

128

127

130

122

132

134

143

140

119

137

125

139

145

157

121

153

120

129

138

136

135

124
System tablessys.numbered_procedures

sys.numbered_procedure_parameters
Nonenumbered_procedures

numbered_procedure_parameters
148

149
System functionsfn_virtualservernodes

fn_servershareddrives
sys.dm_os_cluster_nodes

sys.dm_io_cluster_shared_drives
fn_virtualservernodes

fn_servershareddrives
155

156
System viewssys.sql_dependenciessys.sql_expression_dependenciessys.sql_dependencies198
Table compressionThe use of the vardecimal storage format.Vardecimal storage format is deprecated. SQL Server 2016 data compression, compresses decimal values as well as other data types. We recommend that you use data compression instead of the vardecimal storage format.Vardecimal storage format200
Table compressionUse of the sp_db_vardecimal_storage_format procedure.Vardecimal storage format is deprecated. SQL Server 2016 data compression, compresses decimal values as well as other data types. We recommend that you use data compression instead of the vardecimal storage format.sp_db_vardecimal_storage_format201
Table compressionUse of the sp_estimated_rowsize_reduction_for_vardecimal procedure.Use data compression and the sp_estimate_data_compression_savings procedure instead.sp_estimated_rowsize_reduction_for_vardecimal202
Table hintsSpecifying NOLOCK or READUNCOMMITTED in the FROM clause of an UPDATE or DELETE statement.Remove the NOLOCK or READUNCOMMITTED table hints from the FROM clause.NOLOCK or READUNCOMMITTED in UPDATE or DELETE1
Table hintsSpecifying table hints without using the WITH keyword.Use WITH.Table hint without WITH8
Table hintsINSERT_HINTSINSERT_HINTS34
TextpointersWRITETEXT

UPDATETEXT

READTEXT
NoneUPDATETEXT or WRITETEXT

READTEXT
115

114
TextpointersTEXTPTR()

TEXTVALID()
NoneTEXTPTR

TEXTVALID
5

6
Transact-SQL:: function-calling sequenceReplaced by SELECT column_list FROM sys.<function_name>().

For example, replace SELECT * FROM ::fn_virtualfilestats(2,1)with SELECT * FROM sys.fn_virtualfilestats(2,1).
'::' function calling syntax166
Transact-SQLThree-part and four-part column references.Two-part names is the standard-compliant behavior.More than two-part column name3
Transact-SQLA 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
String literals as column aliases184
Transact-SQLNumbered proceduresNone. Do not use.ProcNums160
Transact-SQLtable_name.index_name syntax in DROP INDEXindex_name ON table_name syntax in DROP INDEX.DROP INDEX with two-part name163
Transact-SQLNot ending Transact-SQL statements with a semicolon.End Transact-SQL statements with a semicolon ( ; ).NoneNone
Transact-SQLGROUP BY ALLUse custom case-by-case solution with UNION or derived table.GROUP BY ALL169
Transact-SQLROWGUIDCOL as a column name in DML statements.Use $rowguid.ROWGUIDCOL182
Transact-SQLIDENTITYCOL as a column name in DML statements.Use $identity.IDENTITYCOL183
Transact-SQLUse of #, ## as temporary table and temporary stored procedure names.Use at least one additional character.'#' and '##' as the name of temporary tables and stored procedures185
Transact-SQLUse of @, @@, or @@ as Transact-SQL identifiers.Do not use @ or @@ or names that begin with @@ as identifiers.'@' and names that start with '@@' as Transact-SQL identifiers186.
Transact-SQLUse of DEFAULT keyword as default value.Do not use the word DEFAULT as a default value.DEFAULT keyword as a default value187
Transact-SQLUse of a space as a separator between table hints.Use a comma to separate table hints.Multiple table hints without comma168
Transact-SQLThe select list of an aggregate indexed view must contain COUNT_BIG (*) in 90 compatibility modeUse COUNT_BIG (*).Index view select list without COUNT_BIG(*)2
Transact-SQLThe indirect application of table hints to an invocation of a multi-statement table-valued function (TVF) through a view.None.Indirect TVF hints7
Transact-SQLALTER DATABASE syntax:

MODIFY FILEGROUP READONLY

MODIFY FILEGROUP READWRITE
MODIFY FILEGROUP READ_ONLY

MODIFY FILEGROUP READ_WRITE
MODIFY FILEGROUP READONLY

MODIFY FILEGROUP READWRITE
195

196
OtherDB-Library

Embedded SQL for C
Although the Database Engine still supports connections from existing applications that use the DB-Library and Embedded SQL APIs, it does not include the files or documentation required to do programming work on applications that use these APIs. A future version of the SQL Server Database Engine will drop support for connections from DB-Library or Embedded SQL applications. Do not use DB-Library or Embedded SQL to develop new applications. Remove any dependencies on either DB-Library or Embedded SQL when you are modifying existing applications. Instead of these APIs, use the SQLClient namespace or an API such as ODBC. SQL Server 2016 does not include the DB-Library DLL required to run these applications. To run DB-Library or Embedded SQL applications, you must have available the DB-Library DLL from SQL Server version 6.5, SQL Server 7.0, or SQL Server 2000.NoneNone
ToolsSQL Server Profiler for Trace CaptureUse Extended Events Profiler embedded in SQL Server Management Studio.SQL Server ProfilerNone
ToolsSQL Server Profiler for Trace ReplaySQL Server Distributed ReplaySQL Server ProfilerNone
Trace Management ObjectsMicrosoft.SqlServer.Management.Trace namespace (contains the APIs for SQL Server Trace and Replay objects)Trace Configuration: Microsoft.SqlServer.Management.XEvent

Trace Reading: Microsoft.SqlServer.XEvent.Linq

Trace Replay: None
SQL Trace stored procedures, functions, and catalog viewssp_trace_create

sp_trace_setevent

sp_trace_setfilter

sp_trace_setstatus

fn_trace_geteventinfo

fn_trace_getfilterinfo

fn_trace_getinfo

fn_trace_gettable

sys.traces

sys.trace_events

sys.trace_event_bindings

sys.trace_categories

sys.trace_columns

sys.trace_subclass_values
Extended Eventssp_trace_create

sp_trace_setevent

sp_trace_setfilter

sp_trace_setstatus

fn_trace_geteventinfo

fn_trace_getfilterinfo

fn_trace_getinfo

fn_trace_gettable

sys.traces

sys.trace_events

sys.trace_event_bindings

sys.trace_categories

sys.trace_columns

sys.trace_subclass_values
258

260

261

259

256

257
System_CAPS_ICON_note.jpg Note


The cookie OUTPUT parameter for sp_setapprole is currently documented as varbinary(8000) which is the correct maximum length. However the current implementation returns varbinary(50). If developers have allocated varbinary(50) the application might require changes if the cookie return size increases in a future release. Though not a deprecation issue this is mentioned in this topic because the application adjustments are similar. For more information, see sp_setapprole (Transact-SQL).

Discontinued Database Engine Functionality in SQL Server 2016

Community Additions

ADD
Show: