PRB: Recordset DTC with COMPUTE Statement Returns Error 80040e21 (193227)



The information in this article applies to:

  • Microsoft Visual InterDev 6.0

This article was previously published under Q193227

SYMPTOMS

When calling a SQL statement or stored procedure from a Recordset Design- Time Control (DTC) that uses a COMPUTE statement, the following error occurs:
Microsoft OLE DB Provider for ODBC Drivers error '80040e21'
The request properties can not be supported by this ODBC Driver.
/<Web Name>/_ScriptLibrary/Recordset.ASP, line 466

CAUSE

When the Recordset DTC has the cursor location property set to "2 - Use Server Side Cursors" (the default value), it cannot return multiple recordsets.

RESOLUTION

Under the Properties dialog box for the Recordset DTC, go to the Advanced tab and change the cursor location from "2 - Use Server-Side Cursor" to "3 - Use Client-Side Cursor."

STATUS

This behavior is by design.

MORE INFORMATION

Steps to Reproduce Behavior

  1. Create a SQL statement or stored procedure that uses the COMPUTE statement, such as the Pubs stored procedure reptq1:
          CREATE PROCEDURE reptq1 AS
          select pub_id, title_id, price, pubdate
          from titles
          where price is NOT NULL
          order by pub_id
          COMPUTE avg(price) BY pub_id
          COMPUTE avg(price)
    						
  2. Bind a Recordset DTC to the SQL statement or stored procedure.
  3. Bind the Grid DTC to this Recordset DTC and have the Grid DTC return the pub_id, title_id, price, and pubdate columns.
  4. Preview this page in your Web browser.
The following error will occur:
Microsoft OLE DB Provider for ODBC Drivers error '80040e21' The request properties can not be supported by this ODBC Driver. /<Web Name>/_ScriptLibrary/Recordset.ASP, line 466

Modification Type:MinorLast Reviewed:3/16/2005
Keywords:kbCtrl kberrmsg kbprb KB193227