Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/10/2008, 08:13
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Cómo hacer funcionar dos versiones de Provider de Oracle en ASP

Buenos Días a todos los Foristas, quisiera saber si alguien de ustedes sabe cómo puedo especificarle a mi página ASP qué provider debe utilizar para conectarse a una BD Oragle 10g. Me explico:

Tengo varias aplicaciones ASP 3 corriendo actualmente bajo el provider de Oracle 10.1 sin embargo durante el desarrollo de una nueva aplicación detectamos un error con este provider, pero que se corrige al instalar la versión 10.2 Release del provider. Sin embargo, mientras hacemos la migración de todas las aplicaciones queremos tener intaladas las dos versiones en el servidor. El problema está en que al parecer ASP tiene conflictos precisamente al no saber cual provider utilizar.

En mi caso la conexión a la base de datos la hago así:

<%
Set Cn = Server.CreateObject("ADODB.Connection")
Cn.Open "Provider=OraOleDB.Oracle; Data Source=BDPru; User ID=Pru; Password=Pru;"
%>

Dato que tengo dos Provider instalados, entonces tengo también dos archivos TNSNAMES.ora con los servicios de Oracle declarados:

C:/oracle/product/10.1.0/Client_1/Network/ADMIN/tnsnames.ora
-->
BDPru =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.10)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = BDPru)
)
)

C:/oracle/product/10.2.0/Client_1/Network/ADMIN/tnsnames.ora

-->
BDPru=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.10)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = BDPru)
)
)

Sin embargo al tratar de hacer la conexión a la base de datos siempre me regresa esta excepción:

OraOLEDB (0x80004005)
ORA-12154: TNS:could not resolve the connect identifier specified

¿Alguien de ustedes me puede decir qué está sucediendo y cómo puedo solucionarlo?
¿Cómo puedo decirle a mi página ASP cuál de los dos providers debe utilizar?
De antemano muchas gracias por el apoyo
Leo