The purpose of allowing multiple statements per connection is for the user to retrieve multiple result sets from a single connection. The application must allow the asynchronously executing function to complete before switching to another statement on the same connection (hdbc) and executing another function.
For multiple statements to execute in parallel asynchronously, the application must open a separate connection for each statement.
This operation is consistent with the “Executing SQL Statements” section description in the Release 2 ODBC Programmer’s Reference specification on “Executing Functions Synchronously” (note 3).