martes, 26 de febrero de 2008

Accediendo a SQLServer2005 Express con JDBC - Parte 1 Configuracion de SQL Server 2005 Express

Introduccion
En este tutorial veremos como conectarnos y mostrar datos de SQL Server 2005 Express con JDBC.

Todo esta dividido en 4 partes:

  1. Configuracion de SQL Server 2005 Express
  2. Configuraciones en Netbeans y creación de una clase ConnectionFactory para acceso a base de datos.
  3. Operaciones SQL
  4. Posibles problemas
Requerimientos:
  1. Microsoft SQL Server JDBC Driver
    La última version, visite Microsoft SQL Server 2005 JDBC Driver.
  2. NetBeans con JRE (Java Runtime Environment) version 1.5 o superior
    Puede encontrar en NetBeans.org.
Configuración paso a paso:
  • SQL Server 2005 Express
Por defecto SQL Server 2005 no permite conexiones remotas y esta deshabilitado ls cuenta sa, asi que nosotros tenemos que hacer los cambios respectivos de forma manual, si usted trata de conectarse se le mostrará un mensaje de error por ejemplo sea cual sea el nombre de su servidor:







Otro problema por defecto que puede surgir cuando queremos conectarnos es que las conexiones TCP/IP están deshabilidatas en SQL Server 2005 Express. Asi que JDBC no se puede conectar y usted puede recibir la siguiente exception …
     Network error IOException: Connection refused: connec

Ahora vamos a configurar estas dos opciones:

1. Habilitar TCP/IP
  1. Click Inicio > Todos los programas > Microsoft SQL Server 2005 > Herramientas de configuracion > SQL Server Configuration Manager.
  2. En el panel izquierdo de la ventana d e SQL Server Configuration Manager, expandir Configuracion de red de SQL Server 2005 y click en Protocolos de SQLEXPRESS.
  3. En el panel derecho de la ventana de SQL Server Configuration Manager,Click derecho en TCP/IP y click para habilit ar.
  4. O través click derecho en TCP/IP y c lick en propiedades.
  5. En la ventana de propiedades deTCP/IP, click en el panel direcciones ip, y expanda IPALL.
  6. Debajo de IPALL, borrar el campo de TCP Dynamic Ports y entonces ingrese un numero de puerto en el campo TCP Port. Usualmente, tiene el valor por defecto de 1433.
  7. En la ventana de propiedades TCP/IP, click OK.
  8. En el panel izquierdo de la ventana SQL Server Configuration Manager, click en Servicios de SQL Server 2005.
  9. En el panel derecho de la ventana de SQL Server Co nfiguration Manager,click derecho en SQL Server (SQLEXPRESS) y click en reinicar.

2. Habilitar la autenticación por conexión remota

Para resolver este problema. Uno es habilitar el modo de autenticación ambos SQL Server y Windows en el servidor y la otra es habilitar la conexión remota en el nave gador de SQL Server.
      • Chekear que usted tenga permitido el modo bo th SQL Server and Windows Authentication mode (Si usted no usa el modo Windows Authentication). Para la instancia del usuario ‘sa’.
1. Iniciar sesion usando SQL Server Management Studio Express al Servidor SQL y en modo Windows Authentication. Esto podría usar su cuenta de Windows para autenticarse con SQL Server.
2. En el objeto Explorador, click derecho en el nombre de instancia y seleccionar propiedades.


3. Seleccionar la página Security y cambiar la autenticación del servidor al modo SQL Server and Windows Authentication mode y presionar el boton Ok.
4. Click derecho otravés en el nombre de la instancia, seleccionar Restart para reiniciar el Servicio de SQL Server.

5. Esto es todo. Tienes habilitado el modoSQL Server and Windows authenticat ion, ahora usted puede iniciar sesion en SQL Server con su cuenta de Windows o su cuenta creada.

      • Chekear que usted tenga habilitado la conexión remota en Configuración de superficie de SQL Server
1. Abrir Configuración de superficie de SQL Server.


2. Seleccioar Configuracion de superficie para Servicios y Conexiones.


3. En el lado izquierdo, expandir su instancia de SQL Server -> Motor de base de datos -> Conexiones Remotas. En el lado derecho, seleccionar Conexiones locales y remotas -> Usar TCP/IP y canalizaciones con nombre.

4. En el lado izquierdo, seleccionar Explorador de SQL Server -> Servicio.
En el lado derecho, si el tipo de inicio esta Deshabilitado, usted necesita cambiarlo a Automatico. Clik en Aceptar.

5. Iniciar sesion usando SQL Server Management Studio Express al Servidor SQL y en modo Windows Authentication.

6. En el panel Object Explorer , expandir Security / nodo Logins.

7. Seleccionar el usuario "sa".

8. Click derecho en el usuario "sa"->propiedades e ingresar password para este usuario.


9. Luego seleccione la página Status y dele Click en la opcion enable de Login, Click en Ok

10. Click derecho otravés en el nombre de la instancia, seleccionar Restart para reiniciar el Servicio de SQL Server.

Probando lo hecho:

Usted ha finalizado la configuracion. Ahora intente iniciar sesion en su Servidor SQL de forma remota o en su computadora usando el modo SQL Server authentication.


Inicio de sesion a SQL Server con éxito.


19 comentarios:

Unknown dijo...

me ha sido de utilidad tu articulo. Está bien documentado y es claro y conciso. ¡pulgar arriba!

Anónimo dijo...

Muchas gracias! me estaba volviendo loco... y al fin lo he conseguido!

Victor dijo...

Muchas gracias estuve lesiando todo un día tratando de conectar el Netbeans 5.5 con SQLServer y no podia y no sabia porque, hice paso a paso lo que mencionaste y no hubo problemas, podrias hacer lo mismo pero para Oracle 9i o 10g?
Gracias

Anónimo dijo...

grax de verdad esta muy bueno el articulo y esta muy preciso y facil de seguir

saludos :D

Anónimo dijo...

Hola gracias me fue de mucha ayuda!!
Nya

Hugo Flores J. dijo...

Gracias por sus comentarios, estimados visitantes, si bien no he podido bloggear mas seguido ha sido por diversos motivos, pero ya estare retomando el mantenimiento de mi blog, jejeje :D

Davidgk dijo...

Flaco ,laverdad te pasaste.. excelente , bien documentado.. te felicito y gracias por tu enseñanza!!

Davidgk dijo...

Flaco ,laverdad te pasaste.. excelente , bien documentado.. te felicito y gracias por tu enseñanza!!

Anónimo dijo...

Muy bueno tu articulo man, te pasaste gracias a ti ia entendi porque me salian esos errores con el sql, muy bueno tu articulo eh:D, 10 puntos

[p3ll3] dijo...

Excelente tutorial !!! , de la que me has salvado...

Anónimo dijo...

La verdad es que te felicito!!. Es bueno saber que todavía hay gente interesada en transmitir sus conocimientos para el bien de otra persona!!.

Muchas gracias y un saludo!!!

Anónimo dijo...

mucahs gracias....realmente me sirvio bastante ... al fin

sam dijo...

Buen Dato.. 4 horas Sufriendo para conectarme a SqlServer... Gracias Amigo

Raul Duprat dijo...

Perdon... y lo que sigue????

Anónimo dijo...

muchas gracias!!! fué de gran ayuda

Anónimo dijo...

Lo mejor que pude haber encontrado, claro, concreto y buenisimo..

Buena tio, me has ayudado como no tienes idea ..

Sale grax

Anónimo dijo...

muchas gracias por tu articulo...me fue de mucha ayuda...
saludos

Anónimo dijo...

Excelente artículo.
Claro y concreto.

Muchas gracias.

Ricardo dijo...

Mochas Gracias me servio mucho, es claro y consiso, nuevamente gracias.

Saludos.