Esta semana estaba intentando realizar una migración desde una Base de Datos de SQL Server Express a Oracle y me encontre con una herramienta que me podia facilitar las cosas, es así como descargue Oracle SQLDeveloper pero me encontre con una conexion complicada de realizar, ¿porque?…
Primero que todo cuando se intenta crear un conexión con SQL Server el sistema te arroja un error de conexión, debido a que no encuentra el Dirver adecuado para dicha conexión, este es jtds-1.2, lo deben descargar y adicionar en Tools->Preferences->DataBase->Third Party JDBC Drivers como lo muestra la imagen:
click en la imagen para ampliar.
Segundo la herramienta asume que se va ha realizar una conexión a una instancia por defecto de SQL Server, y como todos sabemos la instancia en la versión gratuita de microsoft t iene un nombre y es SQLEXPRESS, pero este nombre no puede ser introducido en la ventana de conexion ver imagen:
click en la imagen para ampliar (noten que aca ya se encuentra la instancia SQL Express)
Despues de mucho buscar, y no encontraor me decidi por modificar de alguna forma la cadena de conexión utilidada por la herramienta para incluirle el nombre de la Base de datos y de la instancia, y Ho!, me encontre con este archivo incluido dentro del Oracle SQLDeveloper: IDEConnections.xml se trata de un archivo de configuración de las conexiones se encuentra en la ruta: %ruta sqldeveloper%systemoracle.jdeveloper.db.connection.11.1.1.0.11.42.65 y lo unico que hice ue modificar la cadena de conexion contenida dentro de él, solo deben buscar el nombre de la conexión dentro de él, en mi caso se llama Conexión SQL Server… miren
| <connection> <AlwaysPrompt>false</AlwaysPrompt> <JDBC_PORT>1434</JDBC_PORT> <ConnectionType>JDBC</ConnectionType> <HOSTNAME>localhost</HOSTNAME> <DeployPassword>false</DeployPassword> <sqlserver_windows_authentication>true</sqlserver_windows_authentication> <ConnectionName>Conexion SQLServer</ConnectionName> <URL>jdbc:jtds:sqlserver://localhost:1434/eLearning3;instance=sqlexpress</URL> <is_windows>true</is_windows> <RaptorConnectionType>Microsoft SQL Server</RaptorConnectionType> <JdbcDriver>net.sourceforge.jtds.jdbc.Driver</JdbcDriver> </connection> |
La parque hay que modificar es la URL:
| <URL>jdbc:jtds:sqlserver://SERVIDOR:PUERTO/BaseDatos;instance=NombreInstancia</URL> |
En mi caso con una base de datos llamada eLearning3 y una instancia SQLExpress queda:
| <URL>jdbc:jtds:sqlserver://localhost:1434/eLearning3;instance=sqlexpress</URL> |
Con este cambio en la conexión ya pueden realizar la conexión y como pueden ver enla imagen de la conexión en el campo Retrieve Database aparece nuestra Base de datos con la instancia SQLEXPRESS, espero les sirva, cualquier comentario no duden en realizarlo.
Octubre 7, 2008 at 4:05 am
Lo breve si bueno, dos veces bueno. Muchas gracias
Octubre 22, 2008 at 7:54 am
Jaime: te saludo… soy nuevo en Oracle y me gustaria leer un poco mas sobre conexion desde oracle a sqlserver y poder realizar aplicaciones usando form de oracle.
cualquier ayuda sera bienvenida.
Gracias y te saludo Atte. Antonio Tolaba