KompatibilitätszertifizierungCompatibility Certification

Anwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL DatabaseAnwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL Database

Die Kompatibilitätszertifizierung ermöglicht es Unternehmen, für eine lokale, cloudbasierte oder edgebasierte SQL ServerSQL Server-Datenbank ein Upgrade vorzunehmen und diese zu erneuern, um Risiken im Zusammenhang mit der Anwendungskompatibilität zu vermeiden.Compatibility certification allows businesses to upgrade and modernize a SQL ServerSQL Server database on-premises, in the cloud, and on the edge, eliminating risks of application compatibility.

SQL ServerSQL Server und Azure SQL-DatenbankAzure SQL Database (sowie verwaltete Instanzen) basieren auf derselben Datenbank-EngineDatabase Engine.The same Datenbank-EngineDatabase Engine powers both SQL ServerSQL Server and Azure SQL-DatenbankAzure SQL Database (including Managed Instance). Mithilfe dieser gemeinsam verwendeten Datenbank-EngineDatabase Engine kann eine Benutzerdatenbank problemlos von einer lokalen SQL ServerSQL Server-Instanz zu Azure SQL-DatenbankAzure SQL Database migriert werden. Der Anwendungscode wird dabei in der Datenbank als Transact-SQLTransact-SQL ausgeführt und funktioniert weiterhin so wie auf dem Quellsystem.This shared Datenbank-EngineDatabase Engine means that a user database can be moved seamlessly between on-premises SQL ServerSQL Server and Azure SQL-DatenbankAzure SQL Database, while the application code that executes in the database as Transact-SQLTransact-SQL continues to work as it would in its source system.

Bei einem neuen Release von SQL ServerSQL Server wird der Standardkompatibilitätsgrad auf die Version der Datenbank-EngineDatabase Engine festgelegt.For each new release of SQL ServerSQL Server, the default compatibility level is set to the version of the Datenbank-EngineDatabase Engine. Der Kompatibilitätsgrad vorheriger Versionen wird jedoch beibehalten, um die Kompatibilität mit vorhandenen Anwendungen sicherzustellen.But the compatibility level of previous versions is preserved for continued compatibility of existing applications. Diese Kompatibilitätsmatrix finden Sie unter Argumente.This compatibility matrix can be seen here. Eine Anwendung, die für eine bestimmte SQL ServerSQL Server-Version zertifiziert wurde, wurde daher für den Standardkompatibilitätsgrad dieser Version zertifiziert.Therefore, an application that was certified to work with a given SQL ServerSQL Server version was in fact certified to work on that version's default compatibility level.

In SQL Server 2016 (13.x)SQL Server 2016 (13.x) wurde beispielsweise für den Datenbank-Kompatibilitätsgrad der Standardwert 130 verwendet.For example, database compatibility level 130 was the default in SQL Server 2016 (13.x)SQL Server 2016 (13.x). Da Kompatibilitätsgrade bestimmte Transact-SQLTransact-SQL-Verhalten in Bezug auf Funktionen und auf die Abfrageoptimierung erzwingen, war eine Datenbank, die für SQL Server 2016 (13.x)SQL Server 2016 (13.x) zertifiziert war, implizit auch für den Datenbank-Kompatibilitätsgrad 130 zertifiziert.Because compatibility levels force specific Transact-SQLTransact-SQL functional and query optimization behaviors, a database certified to work on SQL Server 2016 (13.x)SQL Server 2016 (13.x) was implicitly certified on database compatibility level 130. Eine solche Datenbank kann unverändert in einer neueren Version von SQL ServerSQL Server (z. B. SQL Server 2019 (15.x)SQL Server 2019 (15.x)) und Azure SQL-DatenbankAzure SQL Database verwendet werden, solange der Datenbank-Kompatibilitätsgrad 130 beibehalten wird.This database can work as-is on a more recent version of SQL ServerSQL Server (such as SQL Server 2019 (15.x)SQL Server 2019 (15.x)) and Azure SQL-DatenbankAzure SQL Database, as long as the database compatibility level is kept as 130.

Dies ist ein grundlegendes Prinzip des Betriebsmodells Continuous Integration in MicrosoftMicrosoft Azure SQL-DatenbankAzure SQL Database.This is a fundamental principle for MicrosoftMicrosoft Azure SQL-DatenbankAzure SQL Database continuous integration operation model. Die Datenbank-EngineDatabase Engine wird in Azure kontinuierlich verbessert und um Upgrades ergänzt. Da allerdings vorhandene Datenbanken ihren aktuellen Kompatibilitätsgrad beibehalten, funktionieren sie auch nach dem Upgrade der zugrunde liegenden Datenbank-EngineDatabase Engine wie vorgesehen.The Datenbank-EngineDatabase Engine is continuously improved and upgraded in Azure, but because existing databases keep their current compatibility level, they continue to work as designed even after upgrades to the underlying Datenbank-EngineDatabase Engine.

SharePoint Server 2016 und SharePoint Server 2019 führen Zertifizierungen für SQL ServerSQL Server und Verwaltete Azure SQL-InstanzAzure SQL Managed Instance auf dieselbe Weise durch, sodass Sie jede SQL Server-Datenbank-EngineSQL Server Database Engine bereitstellen können, die die unterstützten Datenbank-Kompatibilitätsgrade für diese SharePoint Server-Versionen verwenden kann.This is also how SharePoint Server 2016 and SharePoint Server 2019 certify on SQL ServerSQL Server and Verwaltete Azure SQL-InstanzAzure SQL Managed Instance, allowing you to deploy any SQL Server-Datenbank-EngineSQL Server Database Engine that can use the supported database compatibility levels for those SharePoint Server versions. Weitere Informationen finden Sie unter Hardware- und Softwareanforderungen für SharePoint Server 2016 und Hardware- und Softwareanforderungen für SharePoint Server 2019.For more information, see Hardware and software requirements for SharePoint Server 2016 and Hardware and software requirements for SharePoint Server 2019.

Steuern von Upgraderisiken mithilfe der KompatibilitätszertifizierungManaging upgrade risk with Compatibility Certification

Die Kompatibilitätszertifizierung ist eine Methode, die sich gut zur Datenbankmodernisierung eignet.Using Compatibility Certification is a valuable approach to database modernization. Durch eine Zertifizierung auf Grundlage des Kompatibilitätsgrads legen Entwickler die technischen Anwendungsanforderungen fest. Diese müssen erfüllt sein, damit die Anwendungen in SQL ServerSQL Server und Azure SQL-DatenbankAzure SQL Database unterstützt werden. Gleichzeitig wird jedoch der Lebenszyklus der Anwendung vom Lebenszyklus der Datenbankplattform getrennt.By certifying based on compatibility level, developers set the technical requirements for an application to be supported on SQL ServerSQL Server and Azure SQL-DatenbankAzure SQL Database, but decouple the application lifecycle from the database platform lifecycle. Unternehmen können auf diese Weise sicherstellen, dass die SQL Server-SQL Server-Datenbank-EngineSQL Server Database Engine entsprechend den Lebenszyklusrichtlinien immer auf dem neuesten Stand ist. Außerdem können neue Skalierbarkeits- und Leistungsoptimierungen genutzt werden, die codeunabhängig sind. Vernetzte Anwendungen behalten darüber hinaus durch Upgrades ihren Funktionsstatus.This allows companies to keep the SQL Server-Datenbank-EngineSQL Server Database Engine upgraded as needed by lifecycle policies, as well as leveraging new scalability and performance enhancements that are not code dependant, and connecting applications maintain their functional status through upgrades.

Bei einem Upgrade bestehen die wesentlichen Risikofaktoren in einer eingeschränkten Funktionalität und Leistung.The possibilities of adversely affecting functionality and performance are the main risk factors for any upgrade. Mit der Kompatibilitätszertifizierung können die folgenden Upgraderisiken problemlos gesteuert werden:Compatibility Certification represents peace of mind in terms of managing these upgrade risks:

  • Wenn sich das Transact-SQLTransact-SQL-Verhalten ändert, muss die Anwendung rezertifiziert werden, damit sie richtig funktioniert.In what relates to Transact-SQLTransact-SQL behavior, any change means that an application needs to be recertified for correctness. Die Einstellung Datenbank-Kompatibilitätsgrad bietet Abwärtskompatibilität mit früheren Versionen von SQL ServerSQL Server. Dies gilt allerdings ausschließlich für die angegebene Datenbank und nicht für den gesamten Server.However, the database compatibility level setting provides backward compatibility with earlier versions of SQL ServerSQL Server only for the specified database, not for the entire server. Mit einem unveränderten Datenbank-Kompatibilitätsgrad wird sichergestellt, dass vorhandene Anwendungsabfragen vor und nach einem Upgrade der Datenbank-EngineDatabase Engine weiterhin dasselbe Verhalten aufweisen.Keeping the database compatibility level as-is ensures that existing application queries continue to display the same behavior before and after a Datenbank-EngineDatabase Engine upgrade. Weitere Informationen zum Transact-SQLTransact-SQL-Verhalten und zu Kompatibilitätsgraden finden Sie unter Verwenden von Kompatibilitätsgraden für Abwärtskompatibilität.For more information about Transact-SQLTransact-SQL behavior and compatibility levels, see Using compatibility levels for backward compatibility.

  • Im Zusammenhang mit der Leistung können Abweichungen bei Abfrageplänen zwischen verschiedenen Datenbank-EngineDatabase Engine-Versionen auftreten, da in jeder neuen Version der Abfrageoptimierer verbessert wird.In what relates to performance, because improvements in the Query Optimizer are introduced with every version, it could be expected to encounter query plan differences between different Datenbank-EngineDatabase Engine versions. Abfrageplanabweichungen, die bei einem Upgrade auftreten, führen in der Regel zu einem Risiko, wenn eine bestimmte Abfrage oder Workload durch Änderungen beeinträchtigt werden können.Query plan differences in the scope of an upgrade usually translate to risk, when there is potential that some changes may be detrimental for a given query or workload. Dieses Risiko ist wiederum ein Grund für eine Rezertifizierung. Dies kann zu einer Verzögerung von Upgrades und zu Lebenszyklus- und Supportproblemen führen kann.In turn, this risk is a motivation for recertification, which can delay upgrades and pose lifecycle and support challenges. Verbesserungen des Abfrageoptimierers werden durch den Standardkompatibilitätsgrad eines neuen Release (d. h. der höchsten verfügbaren Kompatibilitätsstufe für jede neue Version) eingeschränkt, um die Upgraderisiken zu verringern.Mitigating upgrade risks is why Query Optimizer improvements are gated to the default compatibility level of a new release (in other words, the highest compatibility level available for any new version). Die Kompatibilitätszertifizierung umfasst den Schutz der Abfrageplanform. Das bedeutet: Wenn der Datenbank-Kompatibilitätsgrad nach einem Upgrade der Datenbank-EngineDatabase Engine beibehalten wird, wird dasselbe Modell zur Abfrageoptimierung in der neuen Version verwendet wie vor dem Upgrade. Die Abfrageplanform sollte sich nicht ändern.Compatibility Certification includes query plan shape protection: the notion that maintaining a database compatibility level as-is immediately after a Datenbank-EngineDatabase Engine upgrade translates into using the same query optimization model in the new version, as it was before the upgrade, and the query plan shape should not change. Weitere Informationen finden Sie im Abschnitt Gründe für die Form des Abfrageplans dieses Artikels.For more information, see the Why query plan shape? section in this article.

Weitere Informationen zu Kompatibilitätsgraden finden Sie unter Verwenden von Kompatibilitätsgraden für Abwärtskompatibilität.For more information about compatibility levels, see Using compatibility levels for backward compatibility.

Wichtig

Aktualisieren Sie bei vorhandenen Anwendungen, die bereits für einen bestimmten Kompatibilitätsgrad zertifiziert wurden, die SQL Server-Datenbank-EngineSQL Server Database Engine, und behalten Sie den vorherigen Datenbank-Kompatibilitätsgrad bei.For an existing application that was already certified for a given compatibility level, upgrade the SQL Server-Datenbank-EngineSQL Server Database Engine and maintain the previous database compatibility level. In diesem Szenario ist ein erneutes Zertifizieren der Anwendungen nicht erforderlich.There is no need to re-certify an application in this scenario. Weitere Informationen finden Sie weiter unten in diesem Artikel unter Kompatibilitätsgrade und Upgrades der Datenbank-Engine.For more information, see Compatibility levels and Database Engine upgrades later in this article.

Bei Neuentwicklungen oder wenn eine vorhandene Anwendung neue Features wie die intelligente Abfrageverarbeitung sowie eine neue Version von Transact-SQLTransact-SQL nutzen muss, sollten Sie ein Upgrade auf den neuesten in SQL ServerSQL Server verfügbaren Datenbank-Kompatibilitätsgrad planen und Ihre Anwendung so erneut zertifizieren, dass sie mit diesem Kompatibilitätsgrad verwendet werden kann.For new development work, or when an existing application requires use of new features such as Intelligent Query Processing, as well as some new Transact-SQLTransact-SQL, plan to upgrade the database compatibility level to the latest available in SQL ServerSQL Server, and re-certify your application to work with that compatibility level. Ausführlichere Informationen zu einem Upgrade des Datenbank-Kompatibilitätsgrads finden Sie unter Bewährte Methoden zum Aktualisieren des Datenbank-Kompatibilitätsgrads.For more information on upgrading the database compatibility level, see Best Practices for upgrading Database Compatibility Level.

Gründe für die Form des AbfrageplansWhy query plan shape?

Die Abfrageplanform bezieht sich auf die visuelle Darstellung der verschiedenen Operatoren, die einen Abfrageplan bilden.Query plan shape refers to the visual representation of the various operators that make up a query plan. Dies schließt Operatoren wie Suchvorgänge, Scans, Joins und Sortierungen sowie die Verbindungen zwischen diesen ein, die den Datenfluss und die Reihenfolge der Vorgänge angeben, die ausgeführt werden müssen, um das gewünschte Resultset zu erzeugen.This includes operators like seeks, scans, joins, and sorts, as well as the connections between them that indicate the flow of data and the order of the operations that must be executed to produce the intended result set. Die Abfrageplanform wird durch den Abfrageoptimierer bestimmt.The query plan shape is determined by the Query Optimizer.

Um die Abfrageleistung während eines Upgrades vorhersagbar zu halten, besteht eines der grundlegenden Ziele darin sicherzustellen, dass dieselbe Abfrageplanform verwendet wird.To keep query performance predictable during an upgrade, one of the fundamental goals is to ensure the same query plan shape is used. Dies kann erreicht werden, indem der Datenbank-Kompatibilitätsgrad nicht unmittelbar nach einem Upgrade geändert wird, auch wenn die zugrundeliegende Datenbank-EngineDatabase Engine über unterschiedliche Versionen verfügt.This can be achieved by not changing the database compatibility level immediately after an upgrade, even though the underlying Datenbank-EngineDatabase Engine has different versions. Wenn im Ökosystem der Abfrageausführung nichts anderes geändert wird, z. B. bedeutende Änderungen an verfügbaren Ressourcen oder die Datenverteilung in den zugrundeliegenden Daten, sollte die Leistung einer Abfrage unverändert bleiben.If nothing else changed in the query execution ecosystem, such as significant changes in available resources, or data distribution in the underlying data, a query's performance should remain unchanged.

Das Beibehalten der Form eines Abfrageplans ist jedoch nicht der einzige Faktor, der nach einem Upgrade zu Leistungseinbußen führen kann.However, keeping a query plan's shape is not the only factor that may have performance implications after an upgrade. Wenn Sie die Datenbank auf eine neuere Datenbank-EngineDatabase Engine verschieben und auch Umgebungsänderungen vornehmen, führen Sie möglicherweise Faktoren ein, die unmittelbare Auswirkungen auf die Leistung einer Abfrage haben, auch wenn der Abfrageplan die gleiche Form in verschiedenen Versionen beibehält.If you move the database to a newer Datenbank-EngineDatabase Engine and also make environmental changes, you may be introducing factors that will have immediate impact on a query's performance, even if the query plan retains the same shape across versions. Diese Umgebungsänderungen können das neue Datenbank-EngineDatabase Engine enthalten, das mehr oder weniger Arbeitsspeicher und CPU-Ressourcen verfügbar macht, Änderungen an Server-oder Datenbank-Konfigurationsoptionen oder Änderungen an der Datenverteilung, die sich auf die Erstellung eines Abfrageplans auswirken.These environmental changes may include the new Datenbank-EngineDatabase Engine having more or less memory and CPU resources available, changes to server or database configuration options, or changes to data distribution that affect how a query plan is created. Daher ist es wichtig zu verstehen, dass das Beibehalten des Datenbank-Kompatibilitätsgrads vor Änderungen in der Form des Abfrageplans schützt, jedoch keinen Schutz vor anderen die Abfrageleistung beeinflussenden Umgebungsaspekten bietet, von denen einige vom Benutzer initiiert werden.This is why it's important to understand that maintaining the database compatibility level protects against changes in the query plan shape, but offers no protection from other environmental aspects that influence query performance, some of which are user-initiated changes.

Weitere Informationen finden Sie im Handbuch zur Architektur der Abfrageverarbeitung.For more information, see the Query Processing Architecture Guide.

Nutzen der KompatibilitätszertifizierungCompatibility Certification benefits

Die Datenbankzertifizierung auf Grundlage der Kompatibilität ist in mehrfacher Hinsicht sinnvoller als eine Zertifizierung, die auf Versionsbezeichnungen basiert:There are several immediate benefits to database certification as a compatibility-based approach rather than a named-version approach:

  • Entkopplung der Anwendungszertifizierung von der Plattform:Decouple application certification from the platform. Für Anwendungen, die Transact-SQLTransact-SQL-Abfragen ausführen müssen, sind wegen der gemeinsam verwendeten Datenbank-EngineDatabase Engine keine unterschiedlichen Zertifizierungsprozesse für Azure und lokale Umgebungen erforderlich.Because of its shared Datenbank-EngineDatabase Engine, for applications that just need to execute Transact-SQLTransact-SQL queries, there is no need to maintain separate certification processes for Azure and on-premises.
  • Verringerung der Upgraderisiken: Bei der Modernisierung von Datenbankplattformen können die Upgradezyklen für die Anwendungs- und Datenbankebene getrennt werden, was zu weniger Ausfallzeiten und einem verbesserten Change Management führt.Reduce upgrade risks because during database platform modernization, application and database platform layer upgrade cycles can be separated for less disruption, and improved change management.
  • Upgrade ohne Codeänderungen:Upgrade with no code changes. Bei einem Upgrade auf eine neue Version von SQL ServerSQL Server oder Azure SQL-DatenbankAzure SQL Database sind keine Codeänderungen erforderlich, wenn der Kompatibilitätsgrad und das Quellsystem beibehalten werden. Eine Rezertifizierung ist erst erforderlich, wenn die Anwendung Verbesserungen nutzen muss, die nur von höheren Datenbank-Kompatibilitätsgraden bereitgestellt werden.Upgrading to a new version of SQL ServerSQL Server or Azure SQL-DatenbankAzure SQL Database can be done with no code changes by keeping the same compatibility level as the source system, and no immediate need to recertify until such time when the application needs to leverage enhancements that are only available in a higher database compatibility level.
  • Verbesserte Verwaltbarkeit und Skalierbarkeit: Eine Anpassung von Anwendungen ist nicht erforderlich. Außerdem werden Verbesserungen nicht durch den Datenbank-Kompatibilitätsgrad eingeschränkt.Improve manageability and scalability without requiring application changes, using enhancements that are not gated by database compatibility level. SQL ServerSQL Server enthält beispielsweise folgende Optimierungen:In SQL ServerSQL Server these include for example:

Neue Datenbanken werden weiterhin auf den Standardkompatibilitätsgrad der Datenbank-EngineDatabase Engine-Version festgelegt.New databases are still set to the default compatibility level of the Datenbank-EngineDatabase Engine version. Wenn jedoch eine Datenbank von einer früheren SQL ServerSQL Server-Version auf eine neue Version von SQL ServerSQL Server oder Azure SQL-DatenbankAzure SQL Database aktualisiert wird, behält die Datenbank den vorhandenen Kompatibilitätsgrad bei.But when a database is moved from any earlier version of SQL ServerSQL Server to a new version of SQL ServerSQL Server or Azure SQL-DatenbankAzure SQL Database, the database retains its existing compatibility level.

Wichtig

Wenn Sie eine Datenbank auf eine neue Version von SQL ServerSQL Server oder Azure SQL-DatenbankAzure SQL Database aktualisieren möchten, müssen Sie vorher überprüfen, ob der Datenbank-Kompatibilitätsgrad noch unterstützt wird.Before moving a database to a new version of SQL ServerSQL Server or Azure SQL-DatenbankAzure SQL Database, verify if the database compatibility level is still supported. Die Matrix für die unterstützten Datenbank-Kompatibilitätsgrade finden Sie unter Argumente.The database compatibility level support matrix can be seen here.

Beim Ausführen eines Upgrades für eine Datenbank, deren Kompatibilitätsgrad unterhalb des zulässigen Grads liegt (beispielsweise 90 in der Standardeinstellung in SQL Server 2005 (9.x)SQL Server 2005 (9.x)), wird die Datenbank automatisch auf den niedrigsten zulässigen Kompatibilitätsgrad (100) festgelegt.Upgrading a database with a compatibility level lower than the allowed level (for example, 90 which was the default in SQL Server 2005 (9.x)SQL Server 2005 (9.x)), sets the database to the lowest compatibility level allowed (100).

Führen Sie eine Abfrage für die Spalte compatibility_level von sys.databases aus, um die aktuellen Kompatibilitätsgrad zu ermitteln.To determine the current compatibility level, query the compatibility_level column of sys.databases.

Kompatibilitätsgrade und Upgrades der Datenbank-EngineCompatibility levels and Database Engine upgrades

Wenn Sie für die Datenbank-EngineDatabase Engine ein Upgrade auf die neueste Version durchführen, dabei aber den Datenbank-Kompatibilitätsgrad von vor dem Upgrade und dessen Unterstützbarkeitsstatus beibehalten möchten, empfiehlt es sich, eine statische Funktionsüberprüfung des Oberflächenbereichs des Anwendungscodes in der Datenbank (Programmierbarkeitsobjekte wie gespeicherte Prozeduren, Funktionen und Trigger) und in der Anwendung (mithilfe einer Arbeitsauslastungs-Ablaufverfolgung, die den von der Anwendung gesendeten dynamischen Code erfasst) durchzuführen.To upgrade the Datenbank-EngineDatabase Engine to the latest version, while maintaining the database compatibility level that existed before the upgrade and its supportability status, it is recommended to perform static functional surface area validation of the application code in the database (programmability objects such as stored procedures, functions, triggers, and others) and in the application (using a workload trace that captures the dynamic code sent by the application).

Dies ist mit dem Tool Microsoft Datenmigrations-Assistent (DMA) problemlos möglich.This can be easily done by using the Microsoft Data Migration Assistant tool (DMA). Gibt es in der Ausgabe von DMA keine Fehler hinsichtlich fehlender oder inkompatibler Funktionalität, ist zu erwarten, dass es keine funktionalen Rückschritte für die Anwendung in der neuen Zielversion gibt.The absence of errors in the DMA tool output, about missing or incompatible functionality, protects application from any functional regressions on the new target version. Wenn Änderungen erforderlich sind, um sicherzustellen, dass Ihre Datenbank in der neuen Version funktioniert, können Sie mit dem DMA ermitteln, wo Änderungen erforderlich sind und welche Problemumgehungsmöglichkeiten es gibt.If changes are required to ensure your database will work in the new version, then DMA will allow you to pinpoint where changes are needed, and what workarounds are available. Weitere Informationen finden Sie unter Übersicht über den Datenmigrations-Assistenten.For more information, see Overview of Data Migration Assistant.

Tipp

Diese Funktionsüberprüfung ist besonders wichtig, wenn eine Datenbank von einer Legacyversion (z. B. SQL Server 2008 R2SQL Server 2008 R2 oder SQL Server 2012 (11.x)SQL Server 2012 (11.x)) zu einer neuen Version von SQL ServerSQL Server oder Azure SQL-DatenbankAzure SQL Database migriert wird, da Ihr Anwendungscode möglicherweise eine nicht mehr unterstützte Version von Transact-SQLTransact-SQL verwendet, die vom Datenbank-Kompatibilitätsgrad nicht umfasst ist.This functional validation is especially important when moving a database from a legacy version (such as SQL Server 2008 R2SQL Server 2008 R2 or SQL Server 2012 (11.x)SQL Server 2012 (11.x)) into a new version of SQL ServerSQL Server or Azure SQL-DatenbankAzure SQL Database, because your application code may be using discontinued Transact-SQLTransact-SQL that is not protected by database compatibility level. Wenn Sie jedoch von einer neueren Version (z. B. SQL Server 2016 (13.x)SQL Server 2016 (13.x)) zu SQL Server 2019 (15.x)SQL Server 2019 (15.x) oder Azure SQL-DatenbankAzure SQL Database wechseln, müssen Sie sich keine Gedanken über eine nicht mehr unterstützte Version von Transact-SQLTransact-SQL machen.But when moving from a more recent version (such as SQL Server 2016 (13.x)SQL Server 2016 (13.x)) to SQL Server 2019 (15.x)SQL Server 2019 (15.x) or Azure SQL-DatenbankAzure SQL Database, there is no discontinued Transact-SQLTransact-SQL to worry about. Weitere Informationen zu nicht mehr unterstützten Versionen von Transact-SQLTransact-SQL finden Sie unter Verwenden des Kompatibilitätsgrads für Abwärtskompatibilität.For more information about discontinued Transact-SQLTransact-SQL, see Using compatibility level for backward compatibility.

Hinweis

DMA unterstützt Datenbank-Kompatibilitätsgrad 100 und höher.DMA supports database compatibility level 100 and above. SQL Server 2005 (9.x)SQL Server 2005 (9.x) ist als Quellversion ausgeschlossen.as source version is excluded.

Wichtig

MicrosoftMicrosoft empfiehlt, einige Minimaltests auszuführen, um den Erfolg eines Upgrades zu überprüfen, wenn der frühere Datenbank-Kompatibilitätsgrad beibehalten wird.recommends that some minimal testing is done to validate the success of an upgrade, while maintaining the previous database compatibility level. Sie sollten bestimmen, was „minimale Tests“ im Zusammenhang Ihrer Anwendung und Ihres Szenarios bedeutet.You should determine what minimal testing means for your own application and scenario.

Wichtig

MicrosoftMicrosoft bietet Schutz für eine Abfrageplanform, wenn Folgendes zutrifft:provides query plan shape protection when:

  • Die neue SQL ServerSQL Server-Version (Ziel) wird auf Hardware ausgeführt, die mit der Hardware vergleichbar ist, auf der die vorherige SQL ServerSQL Server-Version (Quelle) ausgeführt wurde.The new SQL ServerSQL Server version (target) runs on hardware that is comparable to the hardware where the previous SQL ServerSQL Server version (source) was running.
  • Derselbe unterstützte Datenbank-Kompatibilitätsgrad wird sowohl in der SQL ServerSQL Server-Ziel- als auch in der SQL ServerSQL Server-Quellinstanz verwendet.The same supported database compatibility level is used both at the target SQL ServerSQL Server and source SQL ServerSQL Server.
  • Dieselbe Datenbank und Workload werden sowohl für die SQL ServerSQL Server-Zielinstanz als auch für die SQL ServerSQL Server-Quellinstanz verwendet.The same database and workload is used both at the target SQL ServerSQL Server and the source SQL ServerSQL Server.

Alle Rückschritte der Abfrageplanform (im Vergleich mit der SQL ServerSQL Server-Quellinstanz), die bei den oben genannten Bedingungen auftreten, werden behandelt.Any query plan shape regression (as compared to the source SQL ServerSQL Server) that occurs in the above conditions will be addressed. Wenden Sie sich an den Microsoft-Kundensupport, wenn dies der Fall ist.Please contact Microsoft Customer Support if this is the case.

Weitere InformationenSee Also

ALTER DATABASE-Kompatibilitätsgrad ALTER DATABASE COMPATIBILITY LEVEL
Anzeigen oder Ändern des Kompatibilitätsgrads einer Datenbank View or Change the Compatibility Level of a Database
Bewährte Methoden zum Aktualisieren des Datenbank-KompatibilitätsgradsBest Practices for upgrading Database Compatibility Level