DOCUMENT:Q235515 12-JUN-2001 [odbc] TITLE :FIX: Calling IDBInfo::GetKeywords() Causes AV w/ OLE DB Provider PRODUCT :Open Database Connectivity (ODBC) PROD/VER::2.0,2.1,3.5,3.51,3.6,3.7 OPER/SYS: KEYWORDS:kbMDAC kbODBC kbOLEDB kbGrpDSVCDB kbGrpDSMDAC kbDSupport kbMDAC250fix kbMDACNoSweep ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Open Database Connectivity, versions 3.5, 3.51, 3.6, 3.7 - Microsoft Data Access Components versions 2.0, 2.1 ------------------------------------------------------------------------------- SYMPTOMS ======== ODBC drivers that return keywords outside the range of Absolute to Zone cause an access violation in the Microsoft OLEDB Provider for ODBC (MSDASQL) that ships with Microsoft Data Access Components (MDAC) 2.0 and 2.1 when the IDBInfo::GetKeywords() method is called. CAUSE ===== This occurs because of a code problem in the binary search algorithm used by MSDASQL. RESOLUTION ========== To work around this behavior, modify the driver so that it does not return keywords outside the range Absolute - Zone. For example, if the driver returns the keyword Abort, the Microsoft OLEDB Provider for ODBC (MSDASQL) gets an access violation. STATUS ====== This has been fixed as of MDAC 2.5. MORE INFORMATION ================ You can find the default list of Reserved Keywords in the ODBC Programmer's Reference, Volume 2. The default keywords range from ABSOLUTE to ZONE. Additional query words: ====================================================================== Keywords : kbMDAC kbODBC kbOLEDB kbGrpDSVCDB kbGrpDSMDAC kbDSupport kbMDAC250fix kbMDACNoSweep Technology : kbAudDeveloper kbODBCSearch kbMDACSearch kbMDAC200 kbMDAC210 kbODBC360 kbODBC350 kbODBC351 kbODBC370 Version : :2.0,2.1,3.5,3.51,3.6,3.7 Hardware : ALPHA x86 Issue type : kbbug Solution Type : kbfix ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2001.