FIX: RETURN Statement After an RPC Causes Extra Result Set
PSS ID Number: Q100817 Article last modified on 10-31-1994
4.20
WINDOWS
The information in this article applies to: |
- Microsoft SQL Server version 4.2 |
BUG# NT: 324 (4.2)
SYMPTOMS
An extra result set is returned from SQL Server when a stored procedure containing a remote procedure call followed by a RETURN statement is executed. This does not happen if there is no RETURN statement following the EXECUTE statement or if a local procedure is executed instead of a remote one.
For example, executing the following stored procedure replicates the above problem:
create proc rpcproc as execute <remote machine>…sp_who return go execute rpcproc go
WORKAROUND
Modify the stored procedure, if possible, to avoid the explicit return statement following the call to execute the remote procedure. Another workaround is to make sure your front-end application is handling the extra result set properly. One recommened way of doing this is to execute the call to dbresults in a WHILE loop until it returns NO_MORE_RESULTS.
STATUS
Microsoft has confirmed this to be a problem in SQL Server version 4.2 for Windows NT. This problem was corrected in SQL Server version 4.21. For more information, contact your primary support provider.
Additional reference words: 4.20 RPC dbresults DB-Library Windows NT KBCategory: kbprg KBSubcategory: SSrvWinNT
=================================================================
Copyright Microsoft Corporation 1994.