SQL Server 2017 (14.x)SQL Server 2017 (14.x) におけるデータベース エンジン機能の重大な変更Breaking Changes to Database Engine Features in SQL Server 2017 (14.x)SQL Server 2017 (14.x)

適用対象: ○SQL Server XAzure SQL Database XAzure SQL Data Warehouse XParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

このトピックでは、SQL Server 2017 (14.x)SQL Server 2017 (14.x) データベース エンジンDatabase Engine における重大な変更について説明します。This topic describes breaking changes in the SQL Server 2017 (14.x)SQL Server 2017 (14.x) データベース エンジンDatabase Engine. これらの変更によって、以前のバージョンの SQL ServerSQL Serverに基づくアプリケーション、スクリプト、または機能が使用できなくなる場合があります。These changes might break applications, scripts, or functionalities that are based on earlier versions of SQL ServerSQL Server. この問題は、アップグレードするときに発生することがあります。You might encounter these issues when you upgrade.

SQL Server 2017 (14.x)SQL Server 2017 (14.x) データベース エンジンDatabase Engine における重大な変更Breaking Changes in SQL Server 2017 (14.x)SQL Server 2017 (14.x) データベース エンジンDatabase Engine

  • CLR では、セキュリティ境界としてサポートされなくなった、.NET Framework のコード アクセス セキュリティ (CAS) が使用されます。CLR uses Code Access Security (CAS) in the .NET Framework, which is no longer supported as a security boundary. SQL Server 2017 (14.x)SQL Server 2017 (14.x)データベース エンジンDatabase Engine 以降、CLR アセンブリのセキュリティを強化するために clr strict security という sp_configure オプションが導入されました。Beginning with SQL Server 2017 (14.x)SQL Server 2017 (14.x)データベース エンジンDatabase Engine, an sp_configure option called clr strict security is introduced to enhance the security of CLR assemblies. clr strict security は既定で有効になり、SAFE および EXTERNAL_ACCESS CRL アセンブリを UNSAFE とマークされている場合と同じように扱います。clr strict security is enabled by default, and treats SAFE and EXTERNAL_ACCESS CLR assemblies as if they were marked UNSAFE. clr strict security オプションを旧バージョンとの互換性のために無効にすることはできますが、これは推奨されません。The clr strict security option can be disabled for backward compatibility, but this is not recommended. clr strict security を無効にすると、PERMISSION_SET = SAFE で作成された CLR アセンブリが、外部のシステム リソースにアクセスし、アンマネージ コードを呼び出し、sysadmin 特権を取得できる場合があります。When clr strict security is disabled, a CLR assembly created with PERMISSION_SET = SAFE may be able to access external system resources, call unmanaged code, and acquire sysadmin privileges. 厳格なセキュリティを有効にした場合、未署名のアセンブリの読み込みは失敗します。After enabling strict security, any assemblies that are not signed will fail to load. また、データベースに SAFE または EXTERNAL_ACCESS アセンブリがある場合、RESTORE または ATTACH DATABASE ステートメントは完了できますが、アセンブリの読み込みは失敗する可能性があります。Also, if a database has SAFE or EXTERNAL_ACCESS assemblies, RESTORE or ATTACH DATABASE statements can complete, but the assemblies may fail to load.
    アセンブリを読み込むには、各アセンブリを変更または削除して再作成して、サーバーでの UNSAFE ASSEMBLY アクセス許可のある対応するログインを含む証明書または非対称キーで署名されるようにする必要があります。To load the assemblies, you must either alter or drop and recreate each assembly so that it is signed with a certificate or asymmetric key that has a corresponding login with the UNSAFE ASSEMBLY permission on the server. 詳しくは、「CLR の厳密なセキュリティ」をご覧ください。For more information, see CLR strict security.

以前のバージョンPrevious Versions

SQL Server の非常に古いバージョンのアーカイブされたドキュメントArchived Documentation for Very Old Versions of SQL Server

マイクロソフトは、Web ページのアーカイブの セットに非常に古いバージョンの SQL Server のドキュメントを蓄積し、保持しています。We accumulate and retain documentation for very old versions of SQL Server in a set of archive webpages. これらのアーカイブは、SQL Server の以前のバージョンに関するドキュメントで確認できます。You can see these archives at SQL Server previous versions documentation.

2018 年 11 月以降、これらのアーカイブには少なくとも次のドキュメントが含まれます。As of November 2018, these archives include the documentation for at least the following:

  • SQL Server 2012SQL Server 2012
  • SQL Server 2008 R2SQL Server 2008 R2
  • SQL Server 2008:SQL Server 2008
  • SQL Server 2005SQL Server 2005

参照See Also

SQL Server 2016 データベース エンジンの非推奨の機能 Deprecated Database Engine Features in SQL Server 2016
SQL Server 2016 で廃止されたデータベース エンジンの機能 Discontinued Database Engine Functionality in SQL Server 2016
SQL Server データベース エンジンの旧バージョンとの互換性 SQL Server Database Engine Backward Compatibility
ALTER DATABASE 互換性レベル (TRANSACT-SQL)ALTER DATABASE Compatibility Level (Transact-SQL)