Pregunta breve: Estoy descubriendo que necesito usar MARS sobre ODBC pero no sobre ADO/OLEDB, ¿es correcto? explicación¿ODBC es de MARS pero ADO/OLEDB de VENUS?
más larga:
acabo de descubrir mi código de ODBC (usando "Driver = {SQL Native Client}", el código de MFC CDatabase) necesita tener MARS ("MARS_Connection = yes;") porque, aunque me No emite múltiples SELECT al abrir un RecordSet, sí obtengo un lote de filas, luego necesito abrir otro RecordSet para emitir un nuevo SELECT y luego regresar al primer RecordSet para el siguiente lote. Sin MARS obtengo el error ODBC "La conexión está ocupada con los resultados de otro comando". Todo lo justo.
Sin embargo, mi código funciona de manera idéntica con ADO/OLEDB ("Provider = SQLNCLI", #import msado15.dll) en lugar de ODBC. En la misma situación, tengo no tuve que especificar "MarsConn = yes".
Estoy confundido/sorprendido. ¿Es correcto/esperado, o me estoy perdiendo algo?