| title | What's new in SQL Server 2019 | Microsoft Docs |
|---|---|
| ms.date | 01/09/2019 |
| ms.prod | sql |
| ms.reviewer | |
| ms.technology | release-landing |
| ms.topic | article |
| author | MikeRayMSFT |
| ms.author | mikeray |
| manager | craigg |
| monikerRange | >=sql-server-ver15||=sqlallproducts-allversions |
[!INCLUDEtsql-appliesto-ssver15-xxxx-xxxx-xxx]
[!div class="nextstepaction"] Please share your feedback about the SQL Docs Table of Contents!
[!INCLUDEsql-server-2019] builds on previous releases to grow SQL Server as a platform that gives you choices of development languages, data types, on-premises or cloud, and operating systems. This article summarizes what is new for SQL Server 2019. For more information and known issues, see the SQL Server 2019 Release Notes.
Try SQL Server 2019!
Download SQL Server 2019 to install on Windows- Install on Linux for Red Hat Enterprise Server, SUSE Linux Enterprise Server, and Ubuntu.
- Run on SQL Server 2019 on Docker.
Community technology preview (CTP) 2.2 is the latest public release of [!INCLUDEsql-server-2019]. This release includes improvements from previous CTP releases to fix bugs, improve security, and optimize performance. In addition, the following features are added or enhanced for [!INCLUDEsql-server-2019] CTP 2.2.
-
- Use SparkR from Azure Data Studio on a big data cluster
-
- Use UTF-8 character encoding with SQL Server Replication.
Earlier CTP releases added or enhanced the following features for [!INCLUDEsql-server-2019].
-
- Deploy a Big Data cluster with SQL and Spark Linux containers on Kubernetes (CTP 2.0)
- Access your big data from HDFS (CTP 2.0)
- Run Advanced analytics and machine learning with Spark (CTP 2.0)
- Use Spark streaming to data to SQL data pools (CTP 2.0)
- Use Azure Data Studio to run Query books that provide a notebook experience (CTP 2.0)
- Deploy Python and R apps (CTP 2.1)
-
- UTF-8 support (CTP 2.0)
- Resumable online index create allows index create to resume after interruption (CTP 2.0)
- Clustered columnstore online index build and rebuild (CTP 2.0)
- Always Encrypted with secure enclaves (CTP 2.0)
- Intelligent query processing (CTP 2.0)
- Java language programmability extension (CTP 2.0)
- SQL Graph features (CTP 2.0)
- Database scoped configuration setting for online and resumable DDL operations (CTP 2.0)
- Always On Availability Groups - secondary replica connection redirection (CTP 2.0)
- Data discovery and classification - natively built into SQL Server (CTP 2.0)
- Expanded support for persistent memory devices (CTP 2.0)
- Support for columnstore statistics in
DBCC CLONEDATABASE(CTP 2.0) - New options added to
sp_estimate_data_compression_savings(CTP 2.0) - SQL Server Machine Learning Services failover clusters (CTP 2.0)
- Lightweight query profiling infrastructure enabled by default (CTP 2.0)
- New PolyBase connectors (CTP 2.0)
- New
sys.dm_db_page_infosystem function returns page information (CTP 2.0) - Intelligent query processing adds scalar UDF inlining (CTP 2.1)
- Truncation error message improved to include table and column names, and truncated value (CTP 2.1)
- UTF-8 collations support in [!INCLUDEssNoVersion] setup (CTP 2.1)
- Use derived table or view aliases in graph match queries (CTP 2.1)
- Improved diagnostic data for stats blocking (CTP 2.1)
- Hybrid Buffer Pool (CTP 2.1)
- Static data masking (CTP 2.1)
-
- Replication support (CTP 2.0)
- Support for the Microsoft Distributed Transaction Coordinator (MSDTC) (CTP 2.0)
- Always On Availability Group on Docker containers with Kubernetes (CTP 2.0)
- OpenLDAP support for third-party AD providers (CTP 2.0)
- Machine Learning on Linux (CTP 2.0)
- New container registry (CTP 2.0)
- New RHEL-based container images (CTP 2.0)
- Memory pressure notification (CTP 2.0)
-
- Silverlight controls replaced (CTP 2.0)
-
- Certificate management in SQL Server Configuration Manager (CTP 2.0)
-
- SQL Server Management Studio (SSMS) 18.0 (preview) (CTP 2.0)
- Azure Data Studio (CTP 2.0)
- Azure Data Studio (CTP 2.1)
Continue reading for more details about these features.
[!INCLUDEsql-server-2019] Big data clusters enables new scenarios including the following:
- Use SparkR from Azure Data Studio on a big data cluster. (CTP 2.2)
- Deploy Python and R apps. (CTP 2.1)
- Deploy a Big Data cluster with [!INCLUDEssNoVersion] and Spark Linux containers on Kubernetes (CTP 2.0)
- Access your big data from HDFS (CTP 2.0)
- Run Advanced analytics and machine learning with Spark (CTP 2.0)
- Use Spark streaming to data to SQL data pools (CTP 2.0)
- Run Query books that provide a notebook experience in Azure Data Studio. (CTP 2.0)
[!INCLUDE Big data clusters preview]
[!INCLUDEsql-server-2019] introduces or enhances the following new features for the [!INCLUDEssDEnoversion]
Scalar UDF inlining automatically transforms scalar user-defined functions (UDF) into relational expressions and embeds them in the calling SQL query, thereby improving the performance of workloads that leverage scalar UDFs. Scalar UDF inlining facilitates cost-based optimization of operations inside UDFs, and results in efficient plans that are set-oriented and parallel as opposed to inefficient, iterative, serial execution plans. This feature is enabled by default under database compatibility level 150.
For more information, see Scalar UDF inlining.
The error message ID 8152 String or binary data would be truncated is familiar to many [!INCLUDEssNoVersion] developers and administrators who develop or maintain data movement workloads; the error is raised during data transfers between a source and a destination with different schemas when the source data is too large to fit into the destination data type. This error message can be time-consuming to troubleshoot. [!INCLUDEsql-server-2019] introduces a new, more specific error message (2628) for this scenario:
String or binary data would be truncated in table '%.*ls', column '%.*ls'. Truncated value: '%.*ls'.
The new error message 2628 provides more context for the data truncation problem, simplifying the troubleshooting process. For CTP 2.1 and CTP 2.2, this is an opt-in error message and requires trace flag 460 to be enabled.
[!INCLUDEsql-server-2019] provides improved diagnostic data for long-running queries that wait on synchronous statistics update operations. The dynamic management view sys.dm_exec_requests column command shows SELECT (STATMAN) if a SELECT is waiting for a synchronous statistics update operation to complete prior to continuing query execution. Additionally, the new wait type WAIT_ON_SYNC_STATISTICS_REFRESH is surfaced in the sys.dm_os_wait_stats dynamic management view. It shows the accumulated instance-level time spent on synchronous statistics refresh operations.
[!INCLUDEsql-server-2019] introduces static data masking. You can use static data masking to sanitize sensitive data in copies of SQL Server databases. Static data masking helps create a sanitized copy of databases where all sensitive information has been altered in a way that makes the copy sharable with non-production users. Static data masking can be used for development, testing, analytics and business reporting, compliance, troubleshooting, and any other scenario where specific data cannot be copied to different environments.
Static data masking operates at the column level. Select which columns to mask, and for each column selected, specify a masking function. Static data masking copies the database and then applies the specified masking functions to the columns.
Data masking is the process of applying a mask on a database to hide sensitive information and replacing it with new data or scrubbed data. Microsoft offers two masking options, static data masking and dynamic data masking. Dynamic data masking was introduced in [!INCLUDEssSQL17]. The following table compares these two solutions:
| Static data masking | Dynamic data masking |
|---|---|
| Happens on a copy of the database Original data not retrievable Mask occurs at the storage level All users have access to the same masked data Geared toward continuous team-wide access |
Happens on the original database Original data intact Mask occurs on-the-fly at query time Mask varies based on user permission Geared toward punctual user-specific access |
Database COMPATIBILITY_LEVEL 150 is added. To enable for a specific user database, execute:
ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = 150;Full support for the widely used UTF-8 character encoding as an import or export encoding, or as database-level or column-level collation for text data. UTF-8 is allowed in the CHAR and VARCHAR datatypes, and is enabled when creating or changing an object's collation to a collation with the UTF8 suffix.
For example,LATIN1_GENERAL_100_CI_AS_SC to LATIN1_GENERAL_100_CI_AS_SC_UTF8. UTF-8 is only available to Windows collations that support supplementary characters, as introduced in [!INCLUDEssSQL11]. NCHAR and NVARCHAR allow UTF-16 encoding only, and remain unchanged.
This feature may provide significant storage savings, depending on the character set in use. For example, changing an existing column data type with Latin strings from NCHAR(10) to CHAR(10) using an UTF-8 enabled collation, translates into 50% reduction in storage requirements. This reduction is because NCHAR(10) requires 20 bytes for storage, whereas CHAR(10) requires 10 bytes for the same Unicode string.
For more information, see Collation and Unicode Support.
CTP 2.1 Adds support to select UTF-8 collation as default during [!INCLUDEsql-server-2019] setup.
CTP 2.2 Adds support to use UTF-8 character encoding with SQL Server Replication.
-
Resumable online index create allows an index create operation to pause and resume later from where the operation was paused or failed, instead of restarting from the beginning.
Resumable online index create supports the follow scenarios:
- Resume an index create operation after an index create failure, such as after a database failover or after running out of disk space.
- Pause an ongoing index create operation and resume it later allowing to temporarily free system resources as required and resume this operation later.
- Create large indexes without using as much log space and a long-running transaction that blocks other maintenance activities and allowing log truncation.
In case of an index create failure, without this feature an online index create operation must be executed again and the operation must be restarted from the beginning.
With this release, we extend the resumable functionality adding this feature to available resumable online index rebuild.
In addition, this feature can be set as the default for a specific database using database scoped default setting for online and resumable DDL operations.
For more information, see Resumable Online Index Create.
Convert row-store tables into columnstore format. Creating clustered columnstore indexes (CCI) was an offline process in the previous versions of [!INCLUDEssNoVersion] - requiring all changes stop while the CCI is created. With [!INCLUDEsql-server-2019] and [!INCLUDEssSDSfull] you can create or re-create CCI online. Workload will not be blocked and all changes made on the underlying data are transparently added into the target columnstore table. Examples of new [!INCLUDEtsql] statements that can be used are:
CREATE CLUSTERED COLUMNSTORE INDEX cci
ON <tableName>
WITH (ONLINE = ON);ALTER INDEX cci
ON <tableName>
REBUILD WITH (ONLINE = ON);Expands upon Always Encrypted with in-place encryption and rich computations. The expansions come from the enabling of computations on plaintext data, inside a secure enclave on the server side.
Cryptographic operations include the encryption of columns, and the rotating of column encryption keys. These operations can now be issued by using [!INCLUDEtsql], and they do not require that data be moved out of the database. Secure enclaves provide Always Encrypted to a broader set of scenarios that have both of the following requirements:
- The demand that sensitive data are protected from high-privilege, yet unauthorized users, including database administrators, system administrators, cloud operators, or malware.
- The requirement that rich computations on protected data be supported within the database system.
For details, see Always Encrypted with secure enclaves.
Note
Always Encrypted with secure enclaves is only available on Windows OS.
-
Row mode memory grant feedback expands on the memory grant feedback feature introduced in [!INCLUDEssSQL17] by adjusting memory grant sizes for both batch and row mode operators. For an excessive memory grant condition, if the granted memory is more than two times the size of the actual used memory, memory grant feedback will recalculate the memory grant. Consecutive executions will then request less memory. For an insufficiently sized memory grant that results in a spill to disk, memory grant feedback will trigger a recalculation of the memory grant. Consecutive executions will then request more memory. This feature is enabled by default under database compatibility level 150.
-
Approximate COUNT DISTINCT returns the approximate number of unique non-null values in a group. This function is designed for use in big data scenarios. This function is optimized for queries where all the following conditions are true:
- Accesses data sets of at least millions of rows.
- Aggregates a column or columns that have a large number of distinct values.
- Responsiveness is more critical than absolute precision.
APPROX_COUNT_DISTINCTreturns results that are typically within 2% of the precise answer.- And it returns the approximate answer in a small fraction of the time needed for the precise answer.
-
Batch mode on rowstore no longer requires a columnstore index to process a query in batch mode. Batch mode allows query operators to work on a set of rows, instead of just one row at a time. This feature is enabled by default under database compatibility level 150. Batch mode improves the speed of queries that access rowstore tables when all the following are true:
- The query uses analytic operators such as joins or aggregation operators.
- The query involves 100,000 or more rows.
- The query is CPU bound, rather than input/output data bound.
- Creation and use of a columnstore index would have one of the following drawbacks:
- Would add too much overhead to the query.
- Or, is not feasible because your application depends on a feature that is not yet supported with columnstore indexes.
-
Table variable deferred compilation improves plan quality and overall performance for queries referencing table variables. During optimization and initial compilation, this feature will propagate cardinality estimates that are based on actual table variable row counts. This accurate row count information will be used for optimizing downstream plan operations. This feature is enabled by default under database compatibility level 150.
To use intelligent query processing features, set database COMPATIBILITY_LEVEL = 150.
- Java language extension (preview): Use the Java language extension to execute Java code in [!INCLUDEssNoVersion]. In [!INCLUDEsql-server-2019], this extension is installed when you add the feature 'Machine Learning Services (in-database)' to your [!INCLUDEssNoVersion] instance.
-
Use derived table or view aliases in graph match query (CTP 2.1) Graph queries on SQL Server 2019 preview support using view and derived table aliases in the
MATCHsyntax. To use these aliases inMATCH, the views and derived tables must be created on either a set of node or a set of edge tables, using theUNION ALLoperator. The node or edge tables may or may not have filters on it. The ability to use derived table and view aliases inMATCHqueries can be very useful in scenarios where you are looking to query heterogeneous entities or heterogeneous connections between two or more entities in your graph. -
Match support in
MERGEDML (CTP 2.0) allows you to specify graph relationships in a single statement, instead of separateINSERT,UPDATE, orDELETEstatements. Merge your current graph data from node or edge tables with new data using theMATCHpredicates in theMERGEstatement. This feature enablesUPSERTscenarios on edge tables. Users can now use a single merge statement to insert a new edge or update an existing one between two nodes. -
Edge Constraints (CTP 2.0) are introduced for edge tables in SQL Graph. Edge tables can connect any node to any other node in the database. With introduction of edge constraints, you can now apply some restrictions on this behavior. The new
CONNECTIONconstraint can be used to specify the type of nodes a given edge table will be allowed to connect to in the schema.
-
Database scoped default setting for online and resumable DDL operations allows a default behavior setting for
ONLINEandRESUMABLEindex operations at the database level, rather than defining these options for each individual index DDL statement such as index create or rebuild. -
Set these defaults using the
ELEVATE_ONLINEandELEVATE_RESUMABLEdatabase scoped configuration options. Both options will cause the engine to automatically elevate supported operations to index online or resumable execution. You can enable the following behaviors using these options:FAIL_UNSUPPORTEDoption allows all index operations online or resumable and fail index operations that are not supported for online or resumable.WHEN_SUPPPORTEDoption allows supported operations online or resumable and run index unsupported operations offline or non-resumable.OFFoption allows the current behavior of executing all index operations offline and non-resumable unless explicitly specified in the DDL statement.
To override the default setting, include the ONLINE or RESUMABLE option in the index create and rebuild commands.
Without this feature you have to specify the online and resumable options directly in the index DDL statement such as index create and rebuild.
For more information on index resumable operations, see Resumable Online Index Create.
-
Up to five synchronous replicas: [!INCLUDEsql-server-2019] increases the maximum number of synchronous replicas to 5, up from 3 in [!INCLUDEssSQL17] . You can configure this group of 5 replicas to have automatic failover within the group. There is 1 primary replica, plus 4 synchronous secondary replicas.
-
Secondary-to-primary replica connection redirection: Allows client application connections to be directed to the primary replica regardless of the target server specified in the connection string. This capability allows connection redirection without a listener. Use secondary-to-primary replica connection redirection in the following cases:
- The cluster technology does not offer a listener capability.
- A multi subnet configuration where redirection becomes complex.
- Read scale-out or disaster recovery scenarios where cluster type is
NONE.
For details, see Secondary to primary replica read/write connection redirection (Always On Availability Groups).
Data discovery and classification provides advanced capabilities that are natively built into [!INCLUDEssNoVersion]. Classifying and labeling your most sensitive data provides the following benefits:
- Helps meet data privacy standards and regulatory compliance requirements.
- Supports security scenarios, such as monitoring (auditing), and alerting on anomalous access to sensitive data.
- Makes it easier to identify where sensitive data resides in the enterprise, so that administrators can take the right steps to secure the database.
For more information, see SQL Data Discovery and Classification.
Auditing has also been enhanced to include a new field in the audit log called data_sensitivity_information, which logs the sensitivity classifications (labels) of the actual data that was returned by the query. For details and examples, see Add sensitivity classification.
Note
There are no changes in terms of how audit is enabled. There is a new field added to the audit records, data_sensitivity_information, which logs the sensitivity classifications (labels) of the actual data that was returned by the query. See Auditing access to sensitive data.
Any [!INCLUDEssNoVersion] file that is placed on a persistent memory device can now operate in enlightened mode. [!INCLUDEssNoVersion] directly accesses the device, bypassing the storage stack of the operating system using efficient memcpy operations. This mode improves performance because it allows low latency input/output against such devices. - Examples of [!INCLUDEssNoVersion] files include: - Database files - Transaction log files - In-Memory OLTP checkpoint files - Persistent memory is also known as storage class memory. - Persistent memory is occasionally referred to informally as pmem on some non-Microsoft websites.
Note
For this preview release, enlightenment of files on persistent memory devices is only available on Linux. [!INCLUDEssNoVersion] on Windows supports persistent memory devices starting with [!INCLUDEssSQL15].
Hybrid buffer pool is a new feature of the SQL Server database engine where database pages sitting on database files placed on a persistent memory (PMEM) device will be directly accessed when required. Since PMEM devices provide very low latency for data access, the engine can forgo making a copy of the data in a "clean pages" area of the buffer pool and simply access the page directly on PMEM. Access is performed using memory mapped I/O, as is the case with enlightenment. This brings performance benefits from avoiding a copy of the page to DRAM, and from the avoidance of the I/O stack of the operating system to access the page on persistent storage. This feature is available on both SQL Server on Windows and SQL Server on Linux.
For more information, see Hybrid buffer pool
DBCC CLONEDATABASE creates a schema-only copy of a database that includes all the elements necessary to troubleshoot query performance issues without copying the data. In previous versions of [!INCLUDEssNoVersion], the command did not copy the statistics necessary to accurately troubleshoot columnstore index queries and manual steps were required to capture this information. Now in [!INCLUDEsql-server-2019], DBCC CLONEDATABASE automatically captures the stats blobs for columnstore indexes, so no manual steps will be required.
sp_estimate_data_compression_savings returns the current size of the requested object and estimates the object size for the requested compression state. Currently this procedure supports three options: NONE, ROW, and PAGE. [!INCLUDEsql-server-2019] introduces two new options: COLUMNSTORE and COLUMNSTORE_ARCHIVE. These new options will allow you to estimate the space savings if a columnstore index is created on the table using either standard or archive columnstore compression.
-
Partition-based modeling: Process external scripts per partition of your data using the new parameters added to
sp_execute_external_script. This functionality supports training many small models (one model per partition of data) instead of one large model. -
Windows Server Failover Cluster: Configure high availability for Machine Learning Services on a Windows Server Failover Cluster.
For detailed information, see What's new in SQL Server Machine Learning Services.
The lightweight query profiling infrastructure (LWP) provides query performance data more efficiently than standard profiling mechanisms. Lightweight profiling is now enabled by default. It was introduced in [!INCLUDEssSQL15] SP1. Lightweight profiling offers a query execution statistics collection mechanism with an expected overhead of 2% CPU, compared with an overhead of up to 75% CPU for the standard query profiling mechanism. On previous versions, it was OFF by default. Database administrators could enable it with trace flag 7412.
For more information on lightweight profiling, see Query Profiling Infrastructure.
- New connectors for [!INCLUDEssNoVersion], Oracle, Teradata, and MongoDB: [!INCLUDEsql-server-2019] introduces new connectors to external data for [!INCLUDEssNoVersion], Oracle, Teradata, and MongoDB.
sys.dm_db_page_info(database_id, file_id, page_id, mode) returns information about a page in a database. The function returns a row that contains the header information from the page, including the object_id, index_id, and partition_id. This function replaces the need to use DBCC PAGE in most cases.
In order to facilitate troubleshooting of page-related waits, a new column called page_resource was also added to sys.dm_exec_requests and sys.sysprocesses. This new column allows you to join sys.dm_db_page_info to these views via another new system function - sys.fn_PageResCracker. See the following script as an example:
SELECT page_info.*
FROM sys.dm_exec_requests AS d
CROSS APPLY sys.fn_PageResCracker(d.page_resource) AS r
CROSS APPLY sys.dm_db_page_info(r.db_id, r.file_id, r.page_id,'DETAILED')
AS page_info;-
Replication support (CTP 2.0): [!INCLUDEsql-server-2019] supports SQL Server Replication on Linux. A Linux virtual machine with SQL Agent can be a publisher, distributor, or subscriber.
Create the following types of publications:
- Transactional
- Snapshot
- Merge
Configure replication [!INCLUDEssManStudioFull] or use replication stored procedures.
-
Support for the Microsoft Distributed Transaction Coordinator (MSDTC) (CTP 2.0): SQL Server 2019 on Linux supports the Microsoft Distributed Transaction Coordinator (MSDTC). For details, see How to configure MSDTC on Linux.
-
Always On Availability Group on Docker containers with Kubernetes (CTP 2.2): Kubernetes can orchestrate containers running [!INCLUDEssNoVersion] instances to provide a highly available set of databases with SQL Server Always On Availability Groups. A Kubernetes operator deploys a StatefulSet including a container with mssql-server container, and a health monitor.
-
OpenLDAP support for third-party AD providers (CTP 2.0): [!INCLUDEsql-server-2019] on Linux supports OpenLDAP, which allows third-party providers to join Active Directory.
-
Machine Learning on Linux (CTP 2.0): SQL Server 2019 Machine Learning Services (In-Database) is now supported on Linux. Support includes
sp_execute_external_scriptstored procedure. For instructions on how to install Machine Learning Services on Linux, see Install SQL Server 2019 Machine Learning Services R and Python support on Linux. -
New container registry (CTP 2.1): All container images for [!INCLUDEsql-server-2019] as well as [!INCLUDEssSQL17] are now located in the Microsoft Container Registry. Microsoft Container Registry is the official container registry for the distribution of Microsoft product containers. In addition, certified RHEL-based images are now published.
- Microsoft Container Registry:
mcr.microsoft.com/mssql/server:vNext-CTP2.0 - Certified RHEL-based container images:
mcr.microsoft.com/mssql/rhel/server:vNext-CTP2.0
- Microsoft Container Registry:
- Silverlight controls replaced with HTML: The Master Data Services (MDS) portal no longer depends on Silverlight. All the former Silverlight components have been replaced with HTML controls.
-
Certificate management in SQL Server Configuration Manager: SSL/TLS certificates are widely used to secure access to SQL Server instances. Certificate management is now integrated into the SQL Server Configuration Manager, simplifying common tasks such as:
- Viewing and validating certificates installed in a [!INCLUDEssNoVersion] instance.
- Viewing certificates close to expiration.
- Deploy certificates across machines participating in Always On Availability Groups (from the node holding the primary replica).
- Deploy certificates across machines participating in a failover cluster instance (from the active node).
[!NOTE] User must have administrator permissions on all the cluster nodes.
-
Azure Data Studio: Previously released under the preview name SQL Operations Studio, Azure Data Studio is a lightweight, modern, open source, cross-platform desktop tool for the most common tasks in data development and administration. With Azure Data Studio you can connect to SQL Server on premises and in the cloud on Windows, macOS, and Linux. Azure Data Studio allows you to:
- Update to the SQL Server 2019 (preview) extension. (CTP 2.1)
- Edit and run queries in a modern development environment with lightning fast Intellisense, code snippets, and source control integration. (CTP 2.0)
- Quickly visualize data with built-in charting of your result sets. (CTP 2.0)
- Create custom dashboards for your servers and databases using customizable widgets. (CTP 2.0)
- Easily manage your broader environment with the built-in terminal. (CTP 2.0)
- Analyze data in an integrated notebook experience built on Jupyter. (CTP 2.0)
- Enhance your experience with custom theming and extensions.(CTP 2.0)
- And explore your Azure resources with a built-in subscription and resource browser. (CTP 2.0)
- Supports scenarios using SQL Server big data cluster. (CTP 2.0)
-
SQL Server Management Studio (SSMS) 18.0 (preview)
- Support for [!INCLUDEsql-server-2019]. (CTP 2.0)
- Support for Always Encrypted with secure enclaves. (CTP 2.0)
- Smaller download size. (CTP 2.0)
- Now based on the Visual Studio 2017 Isolated Shell. (CTP 2.0)
- For a complete list, see the SSMS changelog. (CTP 2.0)
As of CTP 2.2, [!INCLUDEsql-server-2019] does not introduce new features for the following services:
- [!INCLUDEssNoVersion] Analysis Services (SSAS)
- [!INCLUDEssNoVersion] [!INCLUDEssISnoversion] (SSIS)
- [!INCLUDEssNoVersion] [!INCLUDEssRSnoversion] (SSRS)
-
Microsoft SQL Server 2019: Technical white paper
Published in September 2018. Applies to Microsoft SQL Server 2019 CTP 2.0 for Windows, Linux, and Docker containers.
[!INCLUDEget-help-options]