Interaccion entre Provider=MSDASQL y Provider=SQLOLEDB

12/10/2008 - 17:50 por Jaime Palli | Informe spam
En una red tengo un Windows 2000 Server y en este servidor un SQL Server
2000.
Casi todos los puestos son Windows XP/Vista y 2 de ellos son Windows 2000.
Tanto en los puestos con Windows 2000 como el servidor cuando se accede via
Terminal Server tengo el mismo problema. Esto no ocurre en los puestos con
XP/Vista.
El problema es el conocido "3706 Provider cannot be found".
Despues de mucho buscar por todo tipo de foros no consigo encontrar una
solucion.
Como el problema es el mismo en el servidor que en los puestos, he empezado
a experimentar con uno de los puestos donde he hecho lo siguiente:

Actualizar a SP4.
Instalar MDAC 27 SP1
Instalar SQL Native Client (pero no lo uso, quiero utilizar SQLOLEDB).
Registro con regsvr32 MSDASQL.DLL y SQLOLEDB.DLL

Si establezco una conexion utilizando SQLOLEDB:

Provider=SQLOLEDB.1;Initial Catalog=dtstore;Data
Source=SERVERDT;UID=sa;PWD=pwdxx8;

me aparece el fatidico error, pero si arranco el programa y primero utilizo
esto:

Provider=MSDASQL;Driver={SQL
Server};Database=ArchiMED;Server=SERVERDT;UID=sa;PWD=pwdxx8;

Luego, cierro el recordset utilizado y la conexion y sin salir del programa
utilizo el Provider=SQLOLEDB me funciona hasta que salgo del programa.

Agradeceria cualquier comentario de quien haya experimentado este error y
como lo ha solucionado.
 

Leer las respuestas

#1 Victor Koch
14/10/2008 - 15:47 | Informe spam
Hola,

Seria bueno que nos muestres el código fuente que usas para abrir la
conexión a la base de datos.
En principio te diría que pruebes con este string de conexion:

Provider=SQLOLEDB;Data Source=SERVERDT;Initial Catalog=dtstore;User
ID=sa;Password=pwdxx8;

Un Saludo, Víctor Koch



"Jaime Palli" escribió en el mensaje
news:
En una red tengo un Windows 2000 Server y en este servidor un SQL Server
2000.
Casi todos los puestos son Windows XP/Vista y 2 de ellos son Windows 2000.
Tanto en los puestos con Windows 2000 como el servidor cuando se accede
via Terminal Server tengo el mismo problema. Esto no ocurre en los puestos
con XP/Vista.
El problema es el conocido "3706 Provider cannot be found".
Despues de mucho buscar por todo tipo de foros no consigo encontrar una
solucion.
Como el problema es el mismo en el servidor que en los puestos, he
empezado a experimentar con uno de los puestos donde he hecho lo
siguiente:

Actualizar a SP4.
Instalar MDAC 27 SP1
Instalar SQL Native Client (pero no lo uso, quiero utilizar SQLOLEDB).
Registro con regsvr32 MSDASQL.DLL y SQLOLEDB.DLL

Si establezco una conexion utilizando SQLOLEDB:

Provider=SQLOLEDB.1;Initial Catalog=dtstore;Data
Source=SERVERDT;UID=sa;PWD=pwdxx8;

me aparece el fatidico error, pero si arranco el programa y primero
utilizo esto:

Provider=MSDASQL;Driver={SQL
Server};Database=ArchiMED;Server=SERVERDT;UID=sa;PWD=pwdxx8;

Luego, cierro el recordset utilizado y la conexion y sin salir del
programa utilizo el Provider=SQLOLEDB me funciona hasta que salgo del
programa.

Agradeceria cualquier comentario de quien haya experimentado este error y
como lo ha solucionado.






Preguntas similares