Problem Note 70912: Read performance with SAS/ACCESS® Interface to Microsoft SQL Server might be poor or writes might be incorrect
When using SAS/ACCESS Interface to Microsoft SQL Server to update multiple rows in Microsoft SQL Server, if you are using driver version 08.02.1617 (B2215, U2040), you must set the following:
- the LIBNAME option CURSOR_TYPE=DYNAMIC
- the ODBC DSN option EnableServerSideCursors=4
If you do not set these options, updates to multiple rows might result in incorrect updates.
However, CURSOR_TYPE=DYNAMIC has a negative impact on READ performance.
To check the version of the driver that is installed, assign a LIBNAME and run LIBNAME libref LIST ;. The output will display the version, as shown in the example below.
1? libname dbms sqlsvr dsn=your-dsn user=userid password=password ;
NOTE: Libref DBMS was successfully assigned as follows:
Engine: SQLSVR
Physical Name: your-dsn
2? libname dbms list ;
NOTE: Libref= DBMS
Scope= Line Mode Process
Engine= SQLSVR
Physical Name= your-dsn
Schema/Owner= userid
Server version: = 15.00.4312
SQL Driver version: = 08.02.1617 (B2215, U2040)
ODBC Driver name: = S0sqls28.so
If you need to have good read performance and to ensure that updates work correctly, you must use two different libnames:
- one LIBNAME without CURSOR_TYPE=DYNAMIC to allow good performance for reading rows
- one LIBNAME with CURSOR_TYPE=DYNAMIC to allow correct update of rows
Click the Hot Fix tab in this note to access the hot fix for this issue.
Once the hot fix is deployed, you should stop using CURSOR_TYPE=DYNAMIC, and you should ensure that EnableServerSideCursors=4 is set in your ODBC DSN options.
Operating System and Release Information
SAS System | SAS/ACCESS Interface to Microsoft SQL Server | Microsoft® Windows® for x64 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 8 Enterprise 32-bit | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 8 Enterprise x64 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 8 Pro 32-bit | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 8 Pro x64 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 8.1 Enterprise 32-bit | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 8.1 Enterprise x64 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 8.1 Pro 32-bit | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 8.1 Pro x64 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 10 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows 11 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2008 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2008 R2 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2008 for x64 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2012 Datacenter | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2012 R2 Datacenter | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2012 R2 Std | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2012 Std | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2016 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2019 | 9.4_M7 | | 9.4 TS1M7 | |
Microsoft Windows Server 2022 | 9.4_M7 | | 9.4 TS1M7 | |
Windows 7 Enterprise 32 bit | 9.4_M7 | | 9.4 TS1M7 | |
Windows 7 Enterprise x64 | 9.4_M7 | | 9.4 TS1M7 | |
Windows 7 Home Premium 32 bit | 9.4_M7 | | 9.4 TS1M7 | |
Windows 7 Home Premium x64 | 9.4_M7 | | 9.4 TS1M7 | |
Windows 7 Professional 32 bit | 9.4_M7 | | 9.4 TS1M7 | |
Windows 7 Professional x64 | 9.4_M7 | | 9.4 TS1M7 | |
Windows 7 Ultimate 32 bit | 9.4_M7 | | 9.4 TS1M7 | |
Windows 7 Ultimate x64 | 9.4_M7 | | 9.4 TS1M7 | |
64-bit Enabled AIX | 9.4_M7 | | 9.4 TS1M7 | |
64-bit Enabled Solaris | 9.4_M7 | | 9.4 TS1M7 | |
HP-UX IPF | 9.4_M7 | | 9.4 TS1M7 | |
Linux for x64 | 9.4_M7 | | 9.4 TS1M7 | |
Solaris for x64 | 9.4_M7 | | 9.4 TS1M7 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
Depending on the ODBC Driver setting for EnableServerSideCursors, you might experience poor read performance or data integrity issues when writing to the Microsoft SQL Server.
Type: | Problem Note |
Priority: | high |
Topic: | Data Management ==> Data Sources ==> External Databases ==> MS SQL Server
|
Date Modified: | 2024-08-09 13:20:19 |
Date Created: | 2024-07-29 04:10:21 |