Domanda breve: Sto scoprendo che ho bisogno di usare MARS su ODBC ma non su ADO/OLEDB, è corretto? spiegazioneODBC da MARS ma ADO/OLEDB da VENUS?
più lunga:
Ho appena scoperto il mio codice ODBC (usando "Driver = {SQL Native Client}", MFC CDatabase codice) deve avere MARS ("MARS_Connection = yes;") perché, anche se lo faccio non emettere più SELECTs quando si apre un RecordSet, si preleva un batch di righe, quindi è necessario aprire un altro RecordSet per emettere un nuovo SELECT e quindi tornare al primo RecordSet per il batch successivo. Senza il MARS ottengo l'errore ODBC "La connessione è occupata con i risultati per un altro comando". Tutto abbastanza giusto.
Tuttavia, il mio codice funziona in modo identico con ADO/OLEDB ("Provider = SQLNCLI", #import msado15.dll) anziché ODBC. Nella stessa situazione, ho non dovuto specificare "MarsConn = yes".
Sono confuso/sorpreso. È corretto/previsto, o mi sfugge qualcosa?