SlideShare una empresa de Scribd logo
1 de 3
Descargar para leer sin conexión
1
GUIA PARA CREAR UNA CONEXIÓN
CON UNA BASE DE DATOS POSTGRES
UTILIZANDO JDBC.
ELABORADA POR: BRAVO CONTRERAS MARICELA CLAUDIA
PROFESOR: DR. VICTOR SOSA SOSA
Este documento describe los pasos necesarios
1. Identificar la fuente de datos (base de datos) a la que se desea conectar. Esta puede
ser Oracle, Sybase, Postgres, etc.
2. Obtener el driver JDBC para el manejador de la base de datos correspondiente, en
este ejemplo la conexión se hace con postgres. Para obtener el driver de postgres se
puede bajar de:
http://jdbc.postgresql.org
3. Modificar la variable de ambiente CLASSPATH, asignándole la ruta donde se
encuentra guardado el driver.
Por ejemplo: si el driver de JDBC se encuentra en el directorio /usr/local/lib y el
Java JDK está instalado en el directorio /usr/local/jdk1.3.1. Para correr la aplicación
se utilizaría:
CLASSPATH = usr/local/jdk1.3.1/:usr/local/lib/postgresql.jar
4. Importar el JDBC. Cualquier programa que utilice JDBC necesita importar el
paquete java.sql.
Esto se hace incluyendo la siguiente línea al principio del programa:
Import java.sql.*;
5. Cargar el driver apropiado dentro del código. Una forma de hacerlo es utilizando el
método Class.forName() para cargar la clase explícitamente.
En el caso de PostgreSQL, se utiliza de la siguiente manera:
Class.forName(“postgresql.Driver”);
Para saber que drivers están disponibles se puede utilizar el método getDrivers();
del DriverManager.
6. Una vez que se ha cargado el driver, se llama a DriverManager.getConnection()
para establecer una conexión con la fuente de datos. El método getConnection()
devuelve un objeto tipo Connection que representa una conexión física al URL
especificado. La definición del método getConnection es la siguiente:
public static Connection getConnection(String url, String user, String password)
throws SQLException
Donde el url (Uniform Resource Locator) que representa la base de datos, tiene el
siguiente formato:
jdbc:subprotocol://host:port/datasourcename
2
Estructura del protocolo JDBC
Componente Descripción
jdbc Especifica que se está utilizando un protocolo JDBC
subprotocol Indica el tipo de la fuente de datos. En este caso se utiliza
postgresql. Cuando el DriverManager busca un driver registrado
para conectarse a la fuente de datos, pasa este URL, entonces el
driver puede determinar si puede manejar esta fuente de datos.
host Indica el nombre del servidor donde se encuentra el manejador de
la base de datos. Cuando se omite, se toma como predeterminado
a localhost.
port Especifica el número del puerto donde el servidor está atendiendo.
El puerto estándar predeterminado de PostgreSQL es el número
5432.
datasourcename Es el nombre que el manejador de la base de datos utiliza para
identificar la base de datos.
Parámetros
opcionales
Se puede utilizar para pasar información extra que es específica
del driver.
7. Utilizar la conexión devuelta por el DataManager para acceder la fuente de datos.
Un objeto tipo Connection representa una sesión con la fuente de datos, dentro de
esta sesión se pueden ejecutar cualquier cantidad de instrucciones SQL.
8. Cerrar la conexión
Para cerrar la conexión se llama al método close() del objeto tipo Connection.
¿Cómo obtener datos de la base de datos una vez que ya existe una conexión?
La conexión con la base de datos se utiliza para enviar comandos e instrucciones
SQL a la base de datos. La conexión actúa como una liga directa al driver de la base de
datos. El programa cliente solicita un objeto SQL tipo statement a la conexión y deposita en
él la instrucción a ejecutar. La conexión envía esta información al driver. El driver envía el
objeto SQL a la base de datos y devuelve los resultados. Los resultados regresan al cliente
en la forma de un result set.
El objeto conexión tiene tres métodos que devuelven objetos que representan una
llamada a la base de datos. Estos métodos son:
createStatement(). Devuelve un objeto que implementa la interface statement. Se utiliza
para ejecutar llamadas SQL únicas en la base de datos.
prepareStatement(). Devuelve un objeto tipo preparedStatement que hereda de la interface
statement. Maneja parámetros de entrada. Este tipo de statement puede ser más eficiente si
se planea ejecutar una misma llamada SQL múltiples veces, porque puede ser
precompilada.
prepareCall(). Devuelve un objeto tipo callableSatetment que hereda del
preparedStatement para manejar parámetros de salida. Se utiliza para ejecutar
procedimientos almacenados que tienen parámetros de entrada y valores resultantes de
salida.
3
Un objeto tipo statement tiene tres métodos para enviar SQL a la base de datos y
ejecutar las llamadas a la base de datos:
executeQuery(). Se utiliza generalmente para instrucciones tipo SELECT simples.
executeUpdate(). Actualiza valores de la base de datos. Generalmente es utilizado para las
instrucciones INSERT, UPDATE, DELETE, o comandos tipo DDL como CREATE. Este
método devuelve el número de renglones afectados por el comando.
execute(). Se utiliza para hacer llamadas a procedimientos almacenados que devuelven
múltiples resultados.
Los resultados de una consulta se devuelven en un ResultSet, el cual almacena los
resultados en renglones y mantiene un apuntador al renglón actual. Cada valor dentro de un
renglón puede accesarse por su nombre o por su posición.
Ejemplo de un programa cliente que establece una conexión con una base de datos
import java.sql.*;
public class EjemploJDBC
{
public static void main(String args[])
{
try
{
Class.forName(“postgresql.Driver”);
String url = “jdbc:postgresql://148.208.221.22:5432/deptocomputacion”;
Connection con = DriverManager.getConnection(url, “mari_clau”, “1234”);
Statement stmt = con.createStatement();
// Se ejecuta una consulta y se devuelve el resultado en ResultSet
ResultSet rs = stmt.executeQuery(“select * from estudiantes”);
/* Se realizan iteraciones a través del ResultSet y se imprimen en pantalla los valores de
algunos atributos del renglón. El ResultSet mantiene un apuntador al renglón de datos
actual, inicialmente el apuntador es posicionado antes del primer renglón. El método next
mueve el apuntador al siguiente renglón. */
while (rs.next())
{
System.out.println(rs.getString(“nombre”) + “ “ + rs.getString(“direccion”));
}
}
catch(Exception e)
{
e.printStackTrace();
}
}// fin del main
}// fin de la clase EjemploJDBC

Más contenido relacionado

La actualidad más candente

Acceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletAcceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletjubacalo
 
Servlet Hola Mundo con Eclipse y Tomcat
Servlet Hola Mundo con Eclipse y TomcatServlet Hola Mundo con Eclipse y Tomcat
Servlet Hola Mundo con Eclipse y Tomcatjubacalo
 
Jsp directiva page
Jsp directiva pageJsp directiva page
Jsp directiva pagejubacalo
 
Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLjubacalo
 
Acciones JSP
Acciones JSPAcciones JSP
Acciones JSPjubacalo
 
Manual Netbeans Bases Datos2
Manual Netbeans Bases Datos2Manual Netbeans Bases Datos2
Manual Netbeans Bases Datos2mtemarialuisa
 
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANSTutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANSWilliam Diaz S
 
Explicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundoExplicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundojubacalo
 
Práctica Completa en Flash – ActionScript
Práctica Completa en Flash – ActionScriptPráctica Completa en Flash – ActionScript
Práctica Completa en Flash – ActionScriptjubacalo
 
109545688 conexion-de-sql-a-java
109545688 conexion-de-sql-a-java109545688 conexion-de-sql-a-java
109545688 conexion-de-sql-a-javaMiguel Ángel
 
Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Ronald Cuello
 
Introducción a Java Persistence API
Introducción a Java Persistence APIIntroducción a Java Persistence API
Introducción a Java Persistence APIJose Martinez
 

La actualidad más candente (20)

Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Presentación1
Presentación1Presentación1
Presentación1
 
Acceso a BBDD mediante un servlet
Acceso a BBDD mediante un servletAcceso a BBDD mediante un servlet
Acceso a BBDD mediante un servlet
 
Servlet Hola Mundo con Eclipse y Tomcat
Servlet Hola Mundo con Eclipse y TomcatServlet Hola Mundo con Eclipse y Tomcat
Servlet Hola Mundo con Eclipse y Tomcat
 
Jsp directiva page
Jsp directiva pageJsp directiva page
Jsp directiva page
 
Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTML
 
Guia7 java
Guia7 javaGuia7 java
Guia7 java
 
Acciones JSP
Acciones JSPAcciones JSP
Acciones JSP
 
Manual Netbeans Bases Datos2
Manual Netbeans Bases Datos2Manual Netbeans Bases Datos2
Manual Netbeans Bases Datos2
 
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANSTutorial  JPA Parte 1  : CRUD BASICO CON JPA Y SWING en NETBEANS
Tutorial JPA Parte 1 : CRUD BASICO CON JPA Y SWING en NETBEANS
 
Explicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundoExplicación del código del Servlet HolaMundo
Explicación del código del Servlet HolaMundo
 
Práctica Completa en Flash – ActionScript
Práctica Completa en Flash – ActionScriptPráctica Completa en Flash – ActionScript
Práctica Completa en Flash – ActionScript
 
JPA en Netbeans
JPA en NetbeansJPA en Netbeans
JPA en Netbeans
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
109545688 conexion-de-sql-a-java
109545688 conexion-de-sql-a-java109545688 conexion-de-sql-a-java
109545688 conexion-de-sql-a-java
 
Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)Persistencia De Objetos(Hibernate)
Persistencia De Objetos(Hibernate)
 
Introducción a Java Persistence API
Introducción a Java Persistence APIIntroducción a Java Persistence API
Introducción a Java Persistence API
 
Conexion del jpa con mysql
Conexion del jpa con mysqlConexion del jpa con mysql
Conexion del jpa con mysql
 
Java con base de datos
Java con base  de datosJava con base  de datos
Java con base de datos
 
Buenas
BuenasBuenas
Buenas
 

Similar a Uso java jdbc (20)

Java y Bases de Datos
Java y Bases de DatosJava y Bases de Datos
Java y Bases de Datos
 
Java y Bases Datos
Java y Bases DatosJava y Bases Datos
Java y Bases Datos
 
Bases Datos en java
Bases Datos en javaBases Datos en java
Bases Datos en java
 
Bases de Datos en en www.fiec.espol.edu.ec
Bases de Datos en  en www.fiec.espol.edu.ecBases de Datos en  en www.fiec.espol.edu.ec
Bases de Datos en en www.fiec.espol.edu.ec
 
Unidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde javaUnidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde java
 
3. Curso Java JDBC (Bases de datos) - Curso 2005-2006
3. Curso Java JDBC (Bases de datos) - Curso 2005-20063. Curso Java JDBC (Bases de datos) - Curso 2005-2006
3. Curso Java JDBC (Bases de datos) - Curso 2005-2006
 
Coneccion
ConeccionConeccion
Coneccion
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Connection
ConnectionConnection
Connection
 
S8-POO-4.2 BDD
S8-POO-4.2 BDDS8-POO-4.2 BDD
S8-POO-4.2 BDD
 
Java con Base de Datos
Java con Base de Datos Java con Base de Datos
Java con Base de Datos
 
[ES] Conectividad de java a base de datos(jdbc)
[ES] Conectividad de java a base  de datos(jdbc)[ES] Conectividad de java a base  de datos(jdbc)
[ES] Conectividad de java a base de datos(jdbc)
 
JDBC
JDBCJDBC
JDBC
 
Jdbc
JdbcJdbc
Jdbc
 
Clase conexion java - Analisis de Sistemas
Clase conexion java - Analisis de SistemasClase conexion java - Analisis de Sistemas
Clase conexion java - Analisis de Sistemas
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Tema 9 aplicaciones de dos capas por gio
Tema 9   aplicaciones de dos capas por gioTema 9   aplicaciones de dos capas por gio
Tema 9 aplicaciones de dos capas por gio
 
Jdbc
JdbcJdbc
Jdbc
 
Acceso a datos con JAVA
Acceso a datos con JAVAAcceso a datos con JAVA
Acceso a datos con JAVA
 
Tema 15 aplicaciones de dos capas por gio
Tema 15   aplicaciones de dos capas por gioTema 15   aplicaciones de dos capas por gio
Tema 15 aplicaciones de dos capas por gio
 

Más de jbersosa

Las excepciones standar
Las excepciones standarLas excepciones standar
Las excepciones standarjbersosa
 
Mas sobre excepciones
Mas sobre excepcionesMas sobre excepciones
Mas sobre excepcionesjbersosa
 
Estructuras de control try catch
Estructuras de control try catchEstructuras de control try catch
Estructuras de control try catchjbersosa
 
Clasen1java
Clasen1javaClasen1java
Clasen1javajbersosa
 
Programación java1
Programación java1Programación java1
Programación java1jbersosa
 
Tercercortesistop
TercercortesistopTercercortesistop
Tercercortesistopjbersosa
 
Encapsulacion
EncapsulacionEncapsulacion
Encapsulacionjbersosa
 
Administracion de la memoria principal
Administracion de  la memoria principalAdministracion de  la memoria principal
Administracion de la memoria principaljbersosa
 
Auditoria 2
Auditoria 2Auditoria 2
Auditoria 2jbersosa
 
Auditoriasistemasi 150703002656-lva1-app6891
Auditoriasistemasi 150703002656-lva1-app6891Auditoriasistemasi 150703002656-lva1-app6891
Auditoriasistemasi 150703002656-lva1-app6891jbersosa
 
Auditoria informatica
Auditoria informaticaAuditoria informatica
Auditoria informaticajbersosa
 
Auditoria de sistemas (1)
Auditoria de sistemas (1)Auditoria de sistemas (1)
Auditoria de sistemas (1)jbersosa
 
Auditoría de sistemas de información presentación
Auditoría de sistemas de información presentaciónAuditoría de sistemas de información presentación
Auditoría de sistemas de información presentaciónjbersosa
 
Realizar investigación y hacer un análisis por cada tema asignado al particip...
Realizar investigación y hacer un análisis por cada tema asignado al particip...Realizar investigación y hacer un análisis por cada tema asignado al particip...
Realizar investigación y hacer un análisis por cada tema asignado al particip...jbersosa
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosjbersosa
 
Estructura de una red
Estructura de una redEstructura de una red
Estructura de una redjbersosa
 
Proyectodeprogramacinidesegundocorte2015 2
Proyectodeprogramacinidesegundocorte2015 2Proyectodeprogramacinidesegundocorte2015 2
Proyectodeprogramacinidesegundocorte2015 2jbersosa
 
Simular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentariaSimular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentariajbersosa
 

Más de jbersosa (20)

Las excepciones standar
Las excepciones standarLas excepciones standar
Las excepciones standar
 
Mas sobre excepciones
Mas sobre excepcionesMas sobre excepciones
Mas sobre excepciones
 
Estructuras de control try catch
Estructuras de control try catchEstructuras de control try catch
Estructuras de control try catch
 
Main
MainMain
Main
 
Clasen1java
Clasen1javaClasen1java
Clasen1java
 
Programación java1
Programación java1Programación java1
Programación java1
 
Tercercortesistop
TercercortesistopTercercortesistop
Tercercortesistop
 
Encapsulacion
EncapsulacionEncapsulacion
Encapsulacion
 
Administracion de la memoria principal
Administracion de  la memoria principalAdministracion de  la memoria principal
Administracion de la memoria principal
 
Auditoria 2
Auditoria 2Auditoria 2
Auditoria 2
 
Auditoriasistemasi 150703002656-lva1-app6891
Auditoriasistemasi 150703002656-lva1-app6891Auditoriasistemasi 150703002656-lva1-app6891
Auditoriasistemasi 150703002656-lva1-app6891
 
Auditoria informatica
Auditoria informaticaAuditoria informatica
Auditoria informatica
 
Auditoria de sistemas (1)
Auditoria de sistemas (1)Auditoria de sistemas (1)
Auditoria de sistemas (1)
 
Auditoría de sistemas de información presentación
Auditoría de sistemas de información presentaciónAuditoría de sistemas de información presentación
Auditoría de sistemas de información presentación
 
Realizar investigación y hacer un análisis por cada tema asignado al particip...
Realizar investigación y hacer un análisis por cada tema asignado al particip...Realizar investigación y hacer un análisis por cada tema asignado al particip...
Realizar investigación y hacer un análisis por cada tema asignado al particip...
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Php
PhpPhp
Php
 
Estructura de una red
Estructura de una redEstructura de una red
Estructura de una red
 
Proyectodeprogramacinidesegundocorte2015 2
Proyectodeprogramacinidesegundocorte2015 2Proyectodeprogramacinidesegundocorte2015 2
Proyectodeprogramacinidesegundocorte2015 2
 
Simular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentariaSimular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentaria
 

Último

Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 
libro de Ciencias Sociales_6to grado.pdf
libro de Ciencias Sociales_6to grado.pdflibro de Ciencias Sociales_6to grado.pdf
libro de Ciencias Sociales_6to grado.pdfFAUSTODANILOCRUZCAST
 
MODELO CARACTERIZACION DE PROCESOS SENA.
MODELO CARACTERIZACION DE PROCESOS SENA.MODELO CARACTERIZACION DE PROCESOS SENA.
MODELO CARACTERIZACION DE PROCESOS SENA.imejia2411
 
Historia de la Medicina y bases para desarrollo de ella
Historia de la Medicina y bases para desarrollo de ellaHistoria de la Medicina y bases para desarrollo de ella
Historia de la Medicina y bases para desarrollo de ellajuancamilo3111391
 
COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfOscarBlas6
 
2º SOY LECTOR PART 2- MD EDUCATIVO (6).pdf
2º SOY LECTOR PART 2- MD  EDUCATIVO (6).pdf2º SOY LECTOR PART 2- MD  EDUCATIVO (6).pdf
2º SOY LECTOR PART 2- MD EDUCATIVO (6).pdfFernandaHernandez312615
 
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptxPRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptxRodriguezLucero
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsxactividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx241532171
 
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptxrodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptxssuser61dda7
 

Último (13)

Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 
libro de Ciencias Sociales_6to grado.pdf
libro de Ciencias Sociales_6to grado.pdflibro de Ciencias Sociales_6to grado.pdf
libro de Ciencias Sociales_6to grado.pdf
 
MODELO CARACTERIZACION DE PROCESOS SENA.
MODELO CARACTERIZACION DE PROCESOS SENA.MODELO CARACTERIZACION DE PROCESOS SENA.
MODELO CARACTERIZACION DE PROCESOS SENA.
 
Historia de la Medicina y bases para desarrollo de ella
Historia de la Medicina y bases para desarrollo de ellaHistoria de la Medicina y bases para desarrollo de ella
Historia de la Medicina y bases para desarrollo de ella
 
COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdf
 
2º SOY LECTOR PART 2- MD EDUCATIVO (6).pdf
2º SOY LECTOR PART 2- MD  EDUCATIVO (6).pdf2º SOY LECTOR PART 2- MD  EDUCATIVO (6).pdf
2º SOY LECTOR PART 2- MD EDUCATIVO (6).pdf
 
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptxPRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsxactividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
 
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptxrodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
 

Uso java jdbc

  • 1. 1 GUIA PARA CREAR UNA CONEXIÓN CON UNA BASE DE DATOS POSTGRES UTILIZANDO JDBC. ELABORADA POR: BRAVO CONTRERAS MARICELA CLAUDIA PROFESOR: DR. VICTOR SOSA SOSA Este documento describe los pasos necesarios 1. Identificar la fuente de datos (base de datos) a la que se desea conectar. Esta puede ser Oracle, Sybase, Postgres, etc. 2. Obtener el driver JDBC para el manejador de la base de datos correspondiente, en este ejemplo la conexión se hace con postgres. Para obtener el driver de postgres se puede bajar de: http://jdbc.postgresql.org 3. Modificar la variable de ambiente CLASSPATH, asignándole la ruta donde se encuentra guardado el driver. Por ejemplo: si el driver de JDBC se encuentra en el directorio /usr/local/lib y el Java JDK está instalado en el directorio /usr/local/jdk1.3.1. Para correr la aplicación se utilizaría: CLASSPATH = usr/local/jdk1.3.1/:usr/local/lib/postgresql.jar 4. Importar el JDBC. Cualquier programa que utilice JDBC necesita importar el paquete java.sql. Esto se hace incluyendo la siguiente línea al principio del programa: Import java.sql.*; 5. Cargar el driver apropiado dentro del código. Una forma de hacerlo es utilizando el método Class.forName() para cargar la clase explícitamente. En el caso de PostgreSQL, se utiliza de la siguiente manera: Class.forName(“postgresql.Driver”); Para saber que drivers están disponibles se puede utilizar el método getDrivers(); del DriverManager. 6. Una vez que se ha cargado el driver, se llama a DriverManager.getConnection() para establecer una conexión con la fuente de datos. El método getConnection() devuelve un objeto tipo Connection que representa una conexión física al URL especificado. La definición del método getConnection es la siguiente: public static Connection getConnection(String url, String user, String password) throws SQLException Donde el url (Uniform Resource Locator) que representa la base de datos, tiene el siguiente formato: jdbc:subprotocol://host:port/datasourcename
  • 2. 2 Estructura del protocolo JDBC Componente Descripción jdbc Especifica que se está utilizando un protocolo JDBC subprotocol Indica el tipo de la fuente de datos. En este caso se utiliza postgresql. Cuando el DriverManager busca un driver registrado para conectarse a la fuente de datos, pasa este URL, entonces el driver puede determinar si puede manejar esta fuente de datos. host Indica el nombre del servidor donde se encuentra el manejador de la base de datos. Cuando se omite, se toma como predeterminado a localhost. port Especifica el número del puerto donde el servidor está atendiendo. El puerto estándar predeterminado de PostgreSQL es el número 5432. datasourcename Es el nombre que el manejador de la base de datos utiliza para identificar la base de datos. Parámetros opcionales Se puede utilizar para pasar información extra que es específica del driver. 7. Utilizar la conexión devuelta por el DataManager para acceder la fuente de datos. Un objeto tipo Connection representa una sesión con la fuente de datos, dentro de esta sesión se pueden ejecutar cualquier cantidad de instrucciones SQL. 8. Cerrar la conexión Para cerrar la conexión se llama al método close() del objeto tipo Connection. ¿Cómo obtener datos de la base de datos una vez que ya existe una conexión? La conexión con la base de datos se utiliza para enviar comandos e instrucciones SQL a la base de datos. La conexión actúa como una liga directa al driver de la base de datos. El programa cliente solicita un objeto SQL tipo statement a la conexión y deposita en él la instrucción a ejecutar. La conexión envía esta información al driver. El driver envía el objeto SQL a la base de datos y devuelve los resultados. Los resultados regresan al cliente en la forma de un result set. El objeto conexión tiene tres métodos que devuelven objetos que representan una llamada a la base de datos. Estos métodos son: createStatement(). Devuelve un objeto que implementa la interface statement. Se utiliza para ejecutar llamadas SQL únicas en la base de datos. prepareStatement(). Devuelve un objeto tipo preparedStatement que hereda de la interface statement. Maneja parámetros de entrada. Este tipo de statement puede ser más eficiente si se planea ejecutar una misma llamada SQL múltiples veces, porque puede ser precompilada. prepareCall(). Devuelve un objeto tipo callableSatetment que hereda del preparedStatement para manejar parámetros de salida. Se utiliza para ejecutar procedimientos almacenados que tienen parámetros de entrada y valores resultantes de salida.
  • 3. 3 Un objeto tipo statement tiene tres métodos para enviar SQL a la base de datos y ejecutar las llamadas a la base de datos: executeQuery(). Se utiliza generalmente para instrucciones tipo SELECT simples. executeUpdate(). Actualiza valores de la base de datos. Generalmente es utilizado para las instrucciones INSERT, UPDATE, DELETE, o comandos tipo DDL como CREATE. Este método devuelve el número de renglones afectados por el comando. execute(). Se utiliza para hacer llamadas a procedimientos almacenados que devuelven múltiples resultados. Los resultados de una consulta se devuelven en un ResultSet, el cual almacena los resultados en renglones y mantiene un apuntador al renglón actual. Cada valor dentro de un renglón puede accesarse por su nombre o por su posición. Ejemplo de un programa cliente que establece una conexión con una base de datos import java.sql.*; public class EjemploJDBC { public static void main(String args[]) { try { Class.forName(“postgresql.Driver”); String url = “jdbc:postgresql://148.208.221.22:5432/deptocomputacion”; Connection con = DriverManager.getConnection(url, “mari_clau”, “1234”); Statement stmt = con.createStatement(); // Se ejecuta una consulta y se devuelve el resultado en ResultSet ResultSet rs = stmt.executeQuery(“select * from estudiantes”); /* Se realizan iteraciones a través del ResultSet y se imprimen en pantalla los valores de algunos atributos del renglón. El ResultSet mantiene un apuntador al renglón de datos actual, inicialmente el apuntador es posicionado antes del primer renglón. El método next mueve el apuntador al siguiente renglón. */ while (rs.next()) { System.out.println(rs.getString(“nombre”) + “ “ + rs.getString(“direccion”)); } } catch(Exception e) { e.printStackTrace(); } }// fin del main }// fin de la clase EjemploJDBC