SAP Knowledge Base Article - Preview

2178360 - ODBC: Search argument for smalldatetime and datetime binds as BIGDATETIME if ASE supports the data type, causing optimizer to perform table scan instead of index - SDK for SAP ASE

Symptom

  • A bigdatetime (TDS type) parameter is used to represent a smalldatetime or datetime field in unique index to optimize search performance.
  • When using the field as a search argument (SARG) in where clause, the ASE ODBC Driver (ADO.NET does as well) binds the field as TDS_BIGDATETIME forcing ASE to use table scan and not the index.
  • If table is large enough you can receive timeout messages:

 [SAP][ASE ODBC Driver]The command has timed out.

  • This can cause major production delays and even outages.


Read more...

Environment

  • SAP Adaptive Server Enterprise (ASE) 15.7
  • Adaptive Server Enterprise ODBC Driver by Sybase
  • ODBC applications (MS Access, C++, etc) that bind parameters
  • Microsoft Windows x86 (32-bit)
  • Microsoft Windows x64 (64-bit)
    • Win 7/8/10, 2008/2008 R2, 2012/2012 R2

Product

SAP Adaptive Server Enterprise 15.7 ; SAP Adaptive Server Enterprise 16.0 ; SAP Adaptive Server Enterprise SDK 16.0 ; Sybase SDK 15.5 ; Sybase SDK 15.7 ; Sybase Software Developer Kit 15.7

Keywords

SARG , KBA , BC-SYB-SDK , SDK , BC-SYB-ASE , Sybase ASE Database Platform (non Business Suite) , Bug Filed

About this page

This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP ONE Support launchpad (Login required).

Search for additional results

Visit SAP Support Portal's SAP Notes and KBA Search.