Features of the Microsoft ODBC Driver 11 for SQL Server on Windows
The ODBC Driver for SQL Server contains all the functionality of the SQL Server Native Client ODBC driver that shipped in SQL Server 2012. For more information, see SQL Server Native Client Programming. The SQL Server Native Client ODBC driver is based on the ODBC driver that ships in the Windows operating system. For more information, see Windows Data Access Components SDK.
This release of the ODBC Driver for SQL Server contains the following new features:
- The –l option, which specifies a login timeout, has been added to BCP.exe.
The –l option specifies the number of seconds before a Bcp.exe login to SQL Server times out when you try to connect to a server. The default Bcp.exe timeout for login to SQL Server is 15 seconds. The login time-out must be a number between 0 and 65534. If the value supplied is not numeric or does not fall into that range, Bcp.exe generates an error message. A value of 0 specifies time-out to be infinite.
A login timeout of less than (approximately) 10 seconds are not reliable.
- Driver-Aware Connection Pooling
The ODBC Driver for SQL Server supports Driver-Aware Connection Pooling. For more information, see Driver-Aware Connection Pooling in the ODBC Driver for SQL Server.
- Asynchronous Execution (Notification Method)
The ODBC Driver for SQL Server supports Asynchronous Execution (Notification Method). For a usage sample, see Asynchronous Execution (Notification Method) Sample.
- Connection Resiliency
To ensure that applications remain connected to a SQL Azure Database, the ODBC driver on Windows can restore idle connections. For more information, see Connection Resiliency in the Windows ODBC Driver.
In SQL Server, the -y0 option for Sqlcmd.exe caused output is truncated at 1 MB if display_width was 0.
Beginning in the ODBC Driver 11 for SQL Server, there is no limit on the amount of data that retrieved in a single column when –y0 is specified. Sqlcmd.exe now streams columns as large as 2 GB (SQL Server data type maximum).
Another difference is that a combination of -h -y0 now produces an error that reports the options are incompatible. -h, which specifies the number of rows to print between the column headings and has never been compatible with -y0, and was ignored, though no headers were printed.
-y0 can cause performance issues on both the server and the network, depending on the size of data returned.