Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för: SQL Server 2016 (13.x) och senare versioner
SQL Server 2016 (13.x) markerar följande som föråldrade.
- Datakvalitetstjänster (DQS)
- Master Data Services (MDS)
Information om inaktuella funktioner i andra versioner av SQL Server finns i:
- Inaktuella databasmotorfunktioner i SQL Server 2025 (17.x) förhandsversion
- Inaktuella databasmotorfunktioner i SQL Server 2022 (16.x)
- Inaktuella databasmotorfunktioner i SQL Server 2019 (15.x)
- Inaktuella databasmotorfunktioner i SQL Server 2017 (14.x)
Riktlinjer för utfasning
Den här artikeln beskriver inaktuella SQL Server Database Engine-funktioner som fortfarande är tillgängliga i SQL Server 2016 (13.x). Inaktuella funktioner bör inte användas i nya program.
När en funktion har markerats som inaktuell innebär det:
- Funktionen är endast i underhållsläge. Inga nya ändringar läggs till, inklusive ändringar som rör hantering av samverkan med nya funktioner.
- Vi strävar efter att inte ta bort en inaktuell funktion från framtida versioner för att göra uppgraderingarna enklare. Men i sällsynta situationer kan vi välja att permanent avbryta (ta bort) funktionen från SQL Server om den begränsar framtida innovationer.
- Använd inte inaktuella funktioner för nytt utvecklingsarbete. För befintliga program planerar du att ändra program som för närvarande använder dessa funktioner så snart som möjligt.
Information om SQL Server 2017 (14.x) finns i Inaktuella databasmotorfunktioner i SQL Server 2017 (14.x).
Du kan övervaka användningen av inaktuella funktioner med hjälp av prestandaräknaren och spårningshändelserna för SQL Server Deprecated Features Object. Mer information finns i Använda SQL Server-objekt.
Värdet för dessa räknare är också tillgängligt genom att köra följande instruktion:
SELECT * FROM sys.dm_os_performance_counters
WHERE object_name LIKE '%SQL%Deprecated Features%';
Funktioner som är inaktuella i nästa version av SQL Server
Följande SQL Server Database Engine-funktioner stöds inte i en framtida version av SQL Server. Använd inte de här funktionerna i det nya utvecklingsarbetet och ändra program som för närvarande använder dessa funktioner så snart som möjligt.
Värdet Funktionsnamn visas i spårningshändelser som ObjectName och i prestandaräknare och sys.dm_os_performance_counters som instansnamn.
Funktions-ID-värdet visas i spårningshändelser som ObjectId.
| Kategori | Inaktuell funktion | Ersättning | Funktionsnamn | Funktions-ID |
|---|---|---|---|---|
| Säkerhetskopiering och återställning |
RESTORE { DATABASE | LOG } WITH [MEDIA]PASSWORD fortsätter att vara inaktuell.
BACKUP{ DATABASELOG | } WITH PASSWORD och BACKUP { DATABASE | LOG } WITH MEDIAPASSWORD upphör. |
Ingen |
BACKUP DATABASE eller LOG WITH PASSWORDBACKUP DATABASE eller LOG WITH MEDIAPASSWORD |
104 103 |
| Efterlevnadsnivåer | Uppgradera från version 100 (SQL Server 2008 (10.0.x) och SQL Server 2008 R2 (10.50.x)). | När en SQL Server-version inte stöds markeras den associerade databaskompatibilitetsnivån som inaktuell. Vi fortsätter dock att stödja program som är certifierade på alla databaskompatibilitetsnivåer som stöds så länge som möjligt för att göra uppgraderingarna enklare. Mer information om kompatibilitetsnivåer finns i ALTER DATABASE (Transact-SQL) kompatibilitetsnivå. | Databaskompatibilitetsnivå 100 | 108 |
| Databasobjekt | Möjlighet att returnera resultatuppsättningar från utlösare | Ingen | Returnera resultat från utlösare | 12 |
| Kryptering | Kryptering med RC4 eller RC4_128 är inaktuell och tas bort i nästa version. Att dekryptera RC4 och RC4_128 är inte inaktuellt. | Använd en annan krypteringsalgoritm, till exempel AES. | Inaktuell krypteringsalgoritm | 253 |
| Hash-algoritmer | Användning av MD2, MD4, MD5, SHA och SHA1 är inaktuell. | Använd SHA2_256 eller SHA2_512 i stället. Äldre algoritmer fortsätter att fungera, men de skapar en utfasningshändelse. | Inaktuell hash-algoritm | Ingen |
| Fjärrservrar | sp_addremoteloginsp_addserversp_dropremoteloginsp_helpremoteloginsp_remoteoption |
Ersätt fjärrservrar med hjälp av länkade servrar.
sp_addserver kan endast användas med det lokala alternativet. |
sp_addremoteloginsp_addserversp_dropremoteloginsp_helpremoteloginsp_remoteoption |
70 69 71 72 73 |
| Fjärrservrar | @@remserver | Ersätt fjärrservrar med hjälp av länkade servrar. | Ingen | Ingen |
| Fjärrservrar | SET REMOTE_PROC_TRANSACTIONS |
Ersätt fjärrservrar med hjälp av länkade servrar. | SET REMOTE_PROC_TRANSACTIONS |
110 |
| Tabellhänvisningar | Tabelltips för HOLDLOCK utan parentes. | Använd HOLDLOCK med parenteser. | HOLDLOCK-ledtråd utan parentes | 167 |
Funktioner som är inaktuella i en framtida version av SQL Server
Följande SQL Server Database Engine-funktioner stöds i nästa version av SQL Server, men kommer att bli inaktuella i en senare version. Den specifika versionen av SQL Server har inte fastställts.
| Kategori | Inaktuell funktion | Ersättning | Funktionsnamn | Funktions-ID |
|---|---|---|---|---|
| Efterlevnadsnivåer | sp_dbcmptlevel |
ALTER DATABASE ... SET COMPATIBILITY_LEVEL. Mer information finns i ALTER DATABASE (Transact-SQL) kompatibilitetsnivå. |
sp_dbcmptlevel | 80 |
| Efterlevnadsnivåer | Databaskompatibilitetsnivå 110 och 120. | Planera att uppgradera databasen och programmet för en framtida version. Vi fortsätter dock att stödja program som är certifierade på alla databaskompatibilitetsnivåer som stöds så länge som möjligt för att göra uppgraderingarna enklare. Mer information om kompatibilitetsnivåer finns i ALTER DATABASE (Transact-SQL) kompatibilitetsnivå. | Databaskompatibilitetsnivå 110 Databaskompatibilitetsnivå 120 |
|
| XML | Integrerad generering av XDR-scheman | XMLDATA-direktivet till FOR XML alternativet är inaktuellt. Använd XSD-generering när det gäller RAW lägen och AUTO lägen. XMLDATA-direktivet ersätts inte i EXPLICT-läge. |
XMLDATA | 181 |
| XML | sys.sp_db_selective_xml_index |
ALTER INDEX ... DISABLEMer information finns i ALTER INDEX. |
sys.sp_db_selective_xml_index | |
| Säkerhetskopiering och återställning | SÄKERHETSKOPIERING { DATABAS | LOGG } PÅ BAND SÄKERHETSKOPIERING { DATABAS | LOG } TILL device_that_is_a_tape |
SÄKERHETSKOPIERING { DATABAS | LOG } TILL DISK SÄKERHETSKOPIERING { DATABAS | LOG } TILL device_that_is_a_disk |
SÄKERHETSKOPIERINGSDATABAS ELLER LOGG TILL BAND | 235 |
| Säkerhetskopiering och återställning | sp_addumpdevice 'tape' |
sp_addumpdevice 'disk' |
ADDING TAPE DEVICE |
236 |
| Säkerhetskopiering och återställning | sp_helpdevice |
sys.backup_devices |
sp_helpdevice |
100 |
| Kollationeringar | Korean_Wansung_Unicode Lithuanian_Classic SQL_AltDiction_CP1253_CS_AS |
Ingen. Dessa sorteringar finns i SQL Server 2005 (9.x), men visas inte via fn_helpcollations. | Korean_Wansung_Unicode Lithuanian_Classic SQL_AltDiction_CP1253_CS_AS |
191 192 194 |
| Kollationeringar | Hindi Makedonska |
Dessa sorteringar finns i SQL Server 2005 (9.x) och senare, men visas inte via fn_helpcollations. Använd Macedonian_FYROM_90 och Indic_General_90 i stället. | Hindi Makedonska |
190 193 |
| Kollationeringar | Azeri_Latin_90 Azeri_Cyrilllic_90 |
Azeri_Latin_100 Azeri_Cyrilllic_100 |
Azeri_Latin_90 Azeri_Cyrilllic_90 |
232 233 |
| Konfiguration |
SET ANSI_NULLS OFF och ANSI_NULLS OFF databasalternativSET ANSI_PADDING OFF och ANSI_PADDING OFF databasalternativSET CONCAT_NULL_YIELDS_NULL OFF och CONCAT_NULL_YIELDS_NULL OFF databasalternativSET OFFSETS |
Ingen.ANSI_NULLS, ANSI_PADDING och CONCAT_NULLS_YIELDS_NULL är alltid inställda på ON.
SET OFFSETS kommer inte att vara tillgänglig. |
SET ANSI_NULLS OFFSET ANSI_PADDING OFFSET CONCAT_NULL_YIELDS_NULL OFFSET OFFSETSALTER DATABASE SET ANSI_NULLS OFFALTER DATABASE SET ANSI_PADDING OFFALTER DATABASE SET CONCAT_NULL_YIELDS_NULL OFF |
111 113 112 36 111 113 112 |
| Datatyper | sp_addtypesp_droptype |
CREATE TYPEDROP TYPE |
sp_addtypesp_droptype |
62 63 |
| Datatyper | tidsstämpelsyntax för datatypen rowversion | syntax för rowversion-datatyp | TIMESTAMP |
158 |
| Datatyper | Möjlighet att infoga null-värden i tidsstämpelkolumner . | Använd en DEFAULT i stället. |
INSERT NULL till TIMESTAMP kolumner |
179 |
| Datatyper | Tabellalternativet "text i rad" | Använd datatyperna varchar(max), nvarchar(max) och varbinary(max). Mer information finns i sp_tableoption. | Alternativ för text i radtabell | 9 |
| Datatyper | Datatyper: SMS ntext bild |
Använd datatyperna varchar(max), nvarchar(max) och varbinary(max). | Datatyper: text, ntext eller bild | 4 |
| Databashantering | sp_attach_dbsp_attach_single_file_db |
CREATE DATABASE -instruktion med alternativet FOR ATTACH . Om du vill återskapa flera loggfiler använder du FOR ATTACH_REBUILD_LOG alternativet när en eller flera har en ny plats. |
sp_attach_dbsp_attach_single_file_db |
81 82 |
| Databasobjekt | CREATE DEFAULTDROP DEFAULTsp_bindefault sp_unbindefault |
DEFAULT nyckelord i CREATE TABLE och ALTER TABLE |
CREATE_DROP_DEFAULTsp_bindefaultsp_unbindefault |
162 64 65 |
| Databasobjekt | CREATE RULEDROP RULEsp_bindrulesp_unbindrule |
CHECK nyckelord i CREATE TABLE och ALTER TABLE |
Skapa_Ta_Bort_Regelsp_bindrulesp_unbindrule |
161 66 67 |
| Databasobjekt | sp_change_users_login |
Använd ALTER USER. |
sp_change_users_login |
231 |
| Databasobjekt | sp_depends |
sys.dm_sql_referencing_entities och sys.dm_sql_referenced_entities |
sp_depends |
19 |
| Databasobjekt | sp_renamedb |
MODIFY NAME i ALTER DATABASE |
sp_renamedb |
79 |
| Databasobjekt | sp_getbindtoken |
Använd MARS eller distribuerade transaktioner. | sp_getbindtoken |
98 |
| Databasalternativ | sp_bindsession |
Använd MARS eller distribuerade transaktioner. | sp_bindsession |
97 |
| Databasalternativ | sp_resetstatus |
ALTER DATABASE SET { ONLINE | EMERGENCY } |
sp_resetstatus |
83 |
| Databasalternativ |
TORN_PAGE_DETECTION alternativ för ALTER DATABASE |
PAGE_VERIFY TORN_PAGE_DETECTION alternativ för ALTER DATABASE |
ALTER DATABASE WITH TORN_PAGE_DETECTION |
102 |
| DBCC | DBCC DBREINDEX |
REBUILD
ALTER INDEXalternativet . |
DBCC DBREINDEX | 11 |
| DBCC | DBCC INDEXDEFRAG |
REORGANIZE alternativ för ALTER INDEX |
DBCC INDEXDEFRAG | 18 |
| DBCC | DBCC SHOWCONTIG | sys.dm_db_index_physical_stats |
DBCC SHOWCONTIG | 10 |
| DBCC | DBCC PINTABLE DBCC UNPINTABLE |
Har ingen effekt. | DBCC [UN]PINTABLE | 189 |
| Utökade egenskaper | Level0type = "type" och Level0type = "USER" för att lägga till utökade egenskaper till objekt av typen level-1 eller level-2. | Använd Level0type = 'USER' bara för att lägga till en utökad egenskap direkt till en användare eller roll. Använd Level0type = ' SCHEMA' för att lägga till en utökad egenskap till nivå 1-typer som TABLE eller VIEW eller nivå-2-typer som COLUMN eller TRIGGER. Mer information finns i sp_addextendedproperty. |
EXTPROP_LEVEL0TYPEEXTPROP_LEVEL0USER |
tretton 14 |
| Programmering av utökad lagrad procedur | srv_alloc konvertera_srv srv_beskriv srv_getbindtoken srv_fick_uppmärksamhet srv_message_handler srv_paramdata srv_paraminfo srv_paramlen srv_parammaxlen srv_paramname srv_parameternummer srv_paramset srv_paramsetoutput srv_paramstatus srv_paramtype srv_pfield srv_pfieldex srv_rpcdb srv_rpcname srv_rpcnummer srv_rpcoptions srv_rpcowner srv_rpcparams srv_skickatklart srv_sendmsg srv_sendrow srv_setcoldata srv_setcollen srv_setutype srv_kommerattkonvertera srv_wsendmsg |
Använd CLR-integrering i stället. | XP_API |
20 |
| Programmering av utökad lagrad procedur | sp_addextendedprocsp_dropextendedprocsp_helpextendedproc |
Använd CLR-integrering i stället. | sp_addextendedprocsp_dropextendedprocsp_helpextendedproc |
94 95 96 |
| Utökade lagrade procedurer | xp_grantloginxp_revokeloginxp_loginConfig |
Använd CREATE LOGINAnvänd DROP LOGIN IsIntegratedSecurityOnly argumentet för SERVERPROPERTY |
xp_grantloginxp_revokeloginxp_loginconfig |
44 45 59 |
| Funktionen | fn_get_sql | sys.dm_exec_sql_text |
fn_get_sql | 151 |
| Hög tillgänglighet | databasspegling | AlwaysOn-tillgänglighetsgrupper Om din utgåva av SQL Server inte stöder Always On tillgänglighetsgrupper ska du använda loggöverföring. |
DATABASE_MIRRORING | 267 |
| Indexalternativ | sp_indexoption |
ALTER INDEX |
sp_indexoption |
78 |
| Indexalternativ |
CREATE TABLE, ALTER TABLE, eller CREATE INDEX syntax utan parenteser runt alternativen. |
Skriv om -instruktionen för att använda den aktuella syntaxen. | Indexalternativ | 33 |
| Instansalternativ |
sp_configure alternativet "tillåt uppdateringar" |
Systemtabeller är inte längre uppdateringsbara. Inställningen har ingen effekt. |
sp_configure "tillåt uppdateringar" |
173 |
| Instansalternativ |
sp_configure Alternativ:"lås" "öppna objekt" "ange storlek på arbetsuppsättning" |
Nu konfigureras automatiskt. Inställningen har ingen effekt. |
sp_configure "lås"sp_configure "öppna objekt"sp_configure "ange storlek på arbetsuppsättning" |
174 175 176 |
| Instansalternativ |
sp_configure alternativet "prioritetsökning" |
Systemtabeller är inte längre uppdateringsbara. Inställningen har ingen effekt. Använd Windows-alternativet start /high ... program.exe i stället. |
sp_configure "prioriterad ökning" |
199 |
| Instansalternativ |
sp_configure alternativet "remote proc trans" |
Systemtabeller är inte längre uppdateringsbara. Inställningen har ingen effekt. |
sp_configure "fjärr proc trans" |
37 |
| Länkade servrar | Ange SQLOLEDB-providern för länkade servrar. | Microsoft OLE DB-drivrutin för SQL Server | SQLOLEDB för länkade servrar | 19 |
| Låsning | sp_lock |
sys.dm_tran_locks |
sp_lock |
99 |
| Metainformation | FILE_ID INDEXNYCKEL_EGENSKAP |
FILE_IDEXsys.index_columns |
FILE_ID INDEXNYCKEL_EGENSKAP |
15 17 |
| Interna XML-webbtjänster | -instruktionen CREATE ENDPOINTFOR SOAP eller ALTER ENDPOINT med alternativet .sys.endpoint_webmethods sys.soap_endpunkter |
Använd Windows Communications Foundation (WCF) eller ASP.NET i stället. | CREATE/ALTER ENDPOINTsys.endpoint_webmethods EXT_soap_endpoints sys.soap_endpoints |
21 22 23 |
| Flyttbara databaser | sp_certify_removablesp_create_removable |
sp_detach_db |
sp_certify_removablesp_create_removable |
74 75 |
| Flyttbara databaser | sp_dbremove |
DROP DATABASE |
sp_dbremove |
76 |
| Säkerhet | Syntaxen ALTER LOGIN WITH SET CREDENTIAL |
Ersatt av den nya ALTER LOGIN ADD syntaxen och DROP CREDENTIAL |
ALTER LOGIN WITH SET CREDENTIAL |
230 |
| Säkerhet | sp_addapprolesp_dropapprole |
CREATE APPLICATION ROLEDROP APPLICATION ROLE |
sp_addapprolesp_dropapprole |
53 54 |
| Säkerhet | sp_addloginsp_droplogin |
CREATE LOGINDROP LOGIN |
sp_addloginsp_droplogin |
39 40 |
| Säkerhet | sp_addusersp_dropuser |
CREATE USERDROP USER |
sp_addusersp_dropuser |
49 50 |
| Säkerhet | sp_grantdbaccesssp_revokedbaccess |
CREATE USERDROP USER |
sp_grantdbaccesssp_revokedbaccess |
51 52 |
| Säkerhet | sp_addrolesp_droprole |
CREATE ROLEDROP ROLE |
sp_addrolesp_droprole |
56 57 |
| Säkerhet | sp_approlepasswordsp_password |
ALTER APPLICATION ROLEALTER LOGIN |
sp_approlepasswordsp_password |
55 46 |
| Säkerhet | sp_changeobjectowner |
ALTER SCHEMA eller ALTER AUTHORIZATION |
sp_changeobjectowner |
58 |
| Säkerhet | sp_control_dbmasterkey_password |
En huvudnyckel måste finnas och lösenordet måste vara korrekt. | sp_control_dbmasterkey_password |
274 |
| Säkerhet | sp_defaultdbsp_defaultlanguage |
ALTER LOGIN |
sp_defaultdbsp_defaultlanguage |
47 48 |
| Säkerhet | sp_denyloginsp_grantloginsp_revokelogin |
ALTER LOGIN DISABLECREATE LOGINDROP LOGIN |
sp_denyloginsp_grantloginsp_revokelogin |
42 41 43 |
| Säkerhet | ANVÄNDARE_ID | DATABASE_HUVUD_ID | ANVÄNDARE_ID | 16 |
| Säkerhet | sp_srvrolepermissionsp_dbfixedrolepermission |
Dessa lagrade procedurer returnerar information som var korrekt i SQL Server 2000 (8.x). Utdata återspeglar inte ändringar i behörighetshierarkin som implementerades i SQL Server 2008 (10.0.x). Mer information finns i Behörigheter för fasta serverroller. | sp_srvrolepermissionsp_dbfixedrolepermission |
61 60 |
| Säkerhet | GRANT ALLDENY ALLREVOKE ALL |
GRANT, DENYoch REVOKE specifika behörigheter. |
ALLA behörigheter | 35 |
| Säkerhet | PERMISSIONS inbyggd funktion | Fråga sys.fn_my_permissions i stället. |
TILLÅTELSER | 170 |
| Säkerhet | SETUSER | EXECUTE AS |
SETUSER | 165 |
| Säkerhet | RC4- och DESX krypteringsalgoritmer |
Använd en annan algoritm, till exempel AES. |
DESX algoritm |
238 |
SET Alternativ |
SET FMTONLY |
sys.dm_exec_describe_first_result_set, sys.dm_exec_describe_first_result_set_for_object, sp_describe_first_result_set och sp_describe_undeclared_parameters. | SET FMTONLY |
250 |
| Serverkonfigurationsalternativ | c2-granskningsalternativ standardalternativet spårning aktiverat |
Common Criteria-kompatibilitet aktiverad serverkonfigurationsalternativ översikt över Extended Events |
sp_configure "c2-granskningsläge"sp_configure "standardspårning aktiverat" |
252 253 |
| SMO-klasser |
Microsoft.SQLServer.Management.Smo.Information klassMicrosoft.SQLServer. Management.Smo.Settings klassMicrosoft.SQLServer.Management.Smo.DatabaseOptions klassMicrosoft.SqlServer.Management.Smo.DatabaseDdlTrigger.NotForReplication egenskap |
Microsoft.SqlServer.Management.Smo.Server klassMicrosoft.SqlServer.Management.Smo.Server klassMicrosoft.SqlServer.Management.Smo.Database klassIngen |
Ingen | Ingen |
| SQL Server-agent |
net send-meddelande Pager-meddelande |
E-postmeddelande E-postmeddelande |
Ingen | Ingen |
| SQL Server Management Studio | Solution Explorer-integrering i SQL Server Management Studio | Ingen | Ingen | |
| System sparade procedurer | sp_db_increased_partitions |
Ingen. Stöd för ökade partitioner är nu tillgängligt som standard. | sp_db_increased_partitions |
253 |
| Systemtabeller | sysaltfiles syscacheobjects syscolumns syscomments sysconfigures sysconstraints syscurconfigs sysdatabases sysdepends systemenheter sysfilegroups sysfiles sysforeignkeys sysfulltextcatalogs sysindex sysindexkeys syslockinfo syslogins sysmembers systemmeddelanden sysobjects sysoledbusers sysopentapes sysperfinfo syspermissions sysprocesses sysprotects sysreferences systemfjärrinloggningar sysservers systemtyper sysusers |
Kompatibilitetsvyer. Mer information finns i Systemkompatibilitetsvyer. Viktig: Kompatibilitetsvyerna exponerar inte metadata för funktioner som introducerades i SQL Server 2005 (9.x). Vi rekommenderar att du uppgraderar dina program så att de använder katalogvyer. Mer information finns i Systemkatalogvyer. |
sysaltfiles syscacheobjects syscolumns syscomments sysconfigures sysconstraints syscurconfigs sysdatabases sysdepends systemenheter sysfilegroups sysfiles sysforeignkeys sysfulltextcatalogs sysindex sysindexkeys syslockinfo syslogins sysmembers systemmeddelanden sysobjects sysoledbusers sysopentapes sysperfinfo syspermissions sysprocesses sysprotects sysreferences systemfjärrinloggningar sysservers systemtyper sysusers |
141 Ingen 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 |
| Systemtabeller | sys.numbered_proceduressys.numbered_procedure_parameters |
Ingen | numrerade_procedurer numrerade_procedurparametrar |
148 149 |
| System funktioner | fn_virtualservernodes fn_servershareddrives |
sys.dm_os_cluster_nodessys.dm_io_cluster_shared_drives |
fn_virtualservernodes fn_servershareddrives |
155 156 |
| Systemvyer | sys.sql_dependencies |
sys.sql_expression_dependencies |
sys.sql_dependencies |
198 |
| Tabellkomprimering | Användning av vardecimalt lagringsformat. | Vardecimalt lagringsformat är inaktuellt. Datakomprimering i den här versionen komprimerar decimalvärden och andra datatyper. Vi rekommenderar att du använder datakomprimering i stället för vardecimalt lagringsformat. | Vardecimalt lagringsformat | 200 |
| Tabellkomprimering | Användning av proceduren sp_db_vardecimal_storage_format . |
Vardecimalt lagringsformat är inaktuellt. Sql Server-datakomprimeringsfunktionen komprimerar decimalvärden och andra datatyper. Vi rekommenderar att du använder datakomprimering i stället för vardecimalt lagringsformat. | sp_db_vardecimal_storage_format |
201 |
| Tabellkomprimering | Användning av proceduren sp_estimated_rowsize_reduction_for_vardecimal . |
Använd datakomprimering och proceduren sp_estimate_data_compression_savings i stället. |
sp_estimated_rowsize_reduction_for_vardecimal |
202 |
| Tabellhänvisningar | Ange eller READUNCOMMITTED i -instruktionen FROM i en UPDATE -instruktionDELETE.NOLOCK |
Ta bort tabelltipsen NOLOCKFROM eller READUNCOMMITTED från -satsen. |
NOLOCK eller READUNCOMMITTED i UPDATE eller DELETE |
1 |
| Tabellhänvisningar | Ange tabelltips utan att använda nyckelordet WITH . |
Använd WITH. |
Tabelltips utan WITH |
8 |
| Tabellhänvisningar | INSERT_HINTS | INSERT_HINTS | 34 | |
| Textpekare | SKRIVTEXT UPPDATERA TEXT LÄSTEXT |
Ingen | UPDATETEXT eller WRITETEXT LÄSTEXT |
115 114 |
| Textpekare | TEXTPTR() TEXTVALID() |
Ingen | TEXTPTR TEXTVALID |
5 6 |
| Transact-SQL |
:: funktionsanropssekvens |
Ersatt av SELECT <column_list> FROM sys.<function_name>().Ersätt SELECT * FROM ::fn_virtualfilestats(2,1)till exempel med SELECT * FROM sys.fn_virtualfilestats(2,1). |
Funktionen '::' anropar syntax | 166 |
| Transact-SQL | Tre- och fyrdelade kolumnreferenser. | Tvådelade namn är det standardkompatibla beteendet. | Mer än kolumnnamn i två delar | 3 |
| Transact-SQL | En sträng som omges av citattecken som används som ett kolumnalias för ett uttryck i en SELECT lista:"string_alias" = uttryck |
uttryck [AS] column_alias uttryck [AS] [kolumn_alias] uttryck [AS] "column_alias" uttryck [AS] "column_alias" column_alias = uttryck |
Strängliteraler som kolumnalias | 184 |
| Transact-SQL | Numrerade procedurer | Ingen. Använd inte. | ProcNums | 160 |
| Transact-SQL |
table_name.index_name syntax i DROP INDEX |
ON index_nametable_name syntax i DROP INDEX. |
DROP INDEX med tvådelade namn |
163 |
| Transact-SQL | Slutar inte Transact-SQL-satser med semikolon. | Avsluta Transact-SQL-instruktioner med semikolon (;). |
Ingen | Ingen |
| Transact-SQL | GROUP BY ALL |
Använd en anpassad lösning från fall till fall med UNION eller härledd tabell. |
GROUP BY ALL |
169 |
| Transact-SQL |
ROWGUIDCOL som ett kolumnnamn i DML-instruktioner. |
Använd $rowguid. | ROWGUIDCOL |
182 |
| Transact-SQL | IDENTITYCOL som kolumnnamn i DML-instruktioner. | Använd $identity. | IDENTITYCOL | 183 |
| Transact-SQL | Användning av #, ## som tillfällig tabell och temporära lagrade procedurnamn. | Använd minst ett extra tecken. | '#' och '##' som namn på temporära tabeller och lagrade procedurer | 185 |
| Transact-SQL | Användning av @ eller @@ som Transact-SQL identifierare. | Använd inte @ eller @@ eller namn som börjar med @@ som identifierare. | @och namn som börjar med @@som Transact-SQL identifierare | 186. |
| Transact-SQL | Användning av DEFAULT nyckelord som standardvärde. |
Använd inte ordet DEFAULT som standardvärde. |
DEFAULT nyckelord som standardvärde |
187 |
| Transact-SQL | Användning av ett blanksteg som avgränsare mellan tabelltips. | Använd ett kommatecken för att separera tabelltips. | Flera tabelltips utan kommatecken | 168 |
| Transact-SQL | Den valda listan över en aggregerad indexerad vy måste innehålla COUNT_BIG (*) i 90-kompatibilitetsläge | Använd COUNT_BIG (*). | Välj lista för indexvy utan COUNT_BIG(*) | 2 |
| Transact-SQL | Den indirekta tillämpningen av tabellen antyder ett anrop av en tabellvärdesfunktion med flera instruktioner (TVF) via en vy. | Ingen. | Indirekta TVF-tips | 7 |
| Transact-SQL |
ALTER DATABASE syntax:MODIFY FILEGROUP READONLYMODIFY FILEGROUP READWRITE |
MODIFY FILEGROUP READ_ONLYMODIFY FILEGROUP READ_WRITE |
MODIFY FILEGROUP READONLYMODIFY FILEGROUP READWRITE |
195 196 |
| Annat | DB-Library Inbäddad SQL för C |
Även om databasmotorn fortfarande har stöd för anslutningar från befintliga program som använder api:erna DB-Library och Inbäddade SQL, innehåller den inte de filer eller den dokumentation som krävs för programmering av program som använder dessa API:er. En framtida version av SQL Server Database Engine kommer att ta bort stöd för anslutningar från DB-Library eller inbäddade SQL-program. Använd inte DB-Library eller inbäddad SQL för att utveckla nya program. Ta bort eventuella beroenden på antingen DB-Library eller Inbäddad SQL när du ändrar befintliga program. I stället för dessa API:er använder du SQLClient-namnområdet eller ett API som ODBC. Den aktuella versionen innehåller inte den DB-Library DLL som krävs för att köra dessa program. Om du vill köra DB-Library eller inbäddade SQL-program måste du ha DB-Library DLL från SQL Server version 6.5, SQL Server 7.0 eller SQL Server 2000 (8.x). | Ingen | Ingen |
| Arbetsredskap | SQL Server Profiler för spårfångst | Använd Extended Events Profiler inbäddat i SQL Server Management Studio. | SQL Server Profiler | Ingen |
| Arbetsredskap | SQL Server Profiler för återuppspelning av spår | Översikt över distribuerad SQL Server-repris | SQL Server Profiler | Ingen |
| Spårningshanteringsobjekt | Microsoft.SqlServer.Management.Trace-namnområdet (innehåller API:erna för SQL Server Trace- och Replay-objekt) | Spårningskonfiguration: Microsoft.SqlServer.Management.XEvent Spårningsläsning: Microsoft.SqlServer.XEvent.Linq Spårningsuppspelning: Ingen |
||
| SQL Trace lagrade procedurer, funktioner och katalogvyer | sp_trace_createsp_trace_seteventsp_trace_setfiltersp_trace_setstatusfn_trace_geteventinfo fn_trace_getfilterinfo fn_trace_getinfo fn_trace_gettable sys.tracessys.trace_eventssys.trace_event_bindingssys.trace_categories sys.trace_columns sys.spåra_undreklass_värden |
översikt över Extended Events | sp_trace_createsp_trace_seteventsp_trace_setfiltersp_trace_setstatusfn_trace_geteventinfo fn_trace_getfilterinfo fn_trace_getinfo fn_trace_gettable sys.tracessys.trace_eventssys.trace_event_bindingssys.trace_categoriessys.trace_columnssys.trace_subclass_values |
258 260 261 259 256 257 |
| Ange alternativ |
SET ROWCOUNT för INSERT, UPDATE, och DELETE -instruktioner |
TOP nyckelord |
SET ROWCOUNT |
109 |
Anmärkning
Cookieparametern OUTPUT för dokumenteras för sp_setapprole närvarande som varbinary(8000) som är rätt maximal längd. Den aktuella implementeringen returnerar dock varbinary(50). Om utvecklare har allokerat varbinary(50) kan programmet kräva ändringar om cookiens returstorlek ökar i en framtida version. Även om det inte är ett utfasningsproblem nämns detta i det här avsnittet eftersom programjusteringarna är liknande. Mer information finns i sp_setapprole.