29Feb2008
Filed under: JAVA, LINUX, MYSQL, UBUNTU
Author: yovany
Como lo prometido es deuda aqui esta la segunda parte del mini tutorial de JAVA y MySQL ahora veremos la parte de la conexion a MySQL desde JAVA.
La Base de Datos
Para poder hacer la practica debemos crear la siguiente base de datos ya que la conexion hara referencia a los campos que estan aqui.
Para entrar en mysql, en la consola haremos lo siguiente
CODE:
-
$ mysql -u nuestro_usuario -p
Ojo el usuario con el que vamos a entrar es con el que instalamos mysql, ya que es el que tiene configurado el password en mysql mas adelante veremos como asignar mas usuarios y passsword para mysql.
Una vez que nos haya pedido el password nos mostrara el promp de mysql algo asi:
CODE:
-
Welcome to the MySQL monitor. Commands end with ; or \g.
-
Your MySQL connection id is 10
-
Server version: 5.0.45-Debian_1ubuntu3.1-log Debian etch distribution
-
-
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
-
-
mysql>
Ahora teclearemos lo siguiente atencion de poner ; (punto y coma) al final de cada sentencia de lo contrario asumira que el comando aun continua.
CODE:
-
CREATE DATABASE AGENDA;
-
-
USE AGENDA;
-
-
CREATE TABLE DATOS
-
(
-
NOMBRE VARCHAR(25),
-
TELEFONO VARCHAR(15),
-
CORREO VARCHAR(25),
-
TWITTER VARCHAR(30)
-
);
-
-
INSERT INTO DATOS VALUES('ALAN GASCA','57803747','blue.star.boy@gmail.com','www.twitter.com/yovany');
-
INSERT INTO DATOS VALUES('ALMA DELIA','26461263','almawook@yahoo.com','www.twitter.com/alma');
Con esto abremos creado una base de datos que se llama agenda, le indicamos que agenda es la base de datos donde vamos a trabajar, creamos una tabla que se llama datos e insertamos unos valores para poder ver los resultados de la practica.
Ahora vamos con JAVA
CODE:
-
import java.awt.*;
-
import java.sql.*;
-
import java.util.*;
-
import javax.swing.*;
-
import java.io.*;
-
import java.net.*;
-
-
public class agenda
-
{
-
public String BD="AGENDA"; // ESTA VARIABLE GUARDA EL NOMBRE DE LA BASE DE DATOS A LA QUE NOS VAMOS A CONECTAR
-
public String consulta="SELECT * FROM DATOS";// ESTA GUARDA LA CONSULTA SQL QUE SE VA A EJECUTAR EN LA BD
-
public String USUARIO="mi_usuario";
-
public String PASS="mi_paswd";
-
public Connection conexion=null; // LAS VARIABLES PARA PODER GENERAR LA CONEXION A LA BD
-
public Statement sentencia=null;
-
public ResultSet resultado=null;
-
-
public agenda()
-
{
-
-
try
-
{
-
//LE INDICAMOS A JAVA CUAL ES EL DRIVER QUE VAMOS A UTILIZAR
-
Class.forName("com.mysql.jdbc.Driver").newInstance();
-
//ESTA ES NUESTRA CADENA DE CONEXION LE INDICAMOS CUAL ES LA SIRRCION IP DEL SERVIDOR DE MYSQL
-
//ADEMAS DE LA BASE DE DATOS A LA QUE SE VA A CONECTAR ASI COMO EL USUARIO Y PASSWORD
-
//RECUERDEN QUE ES EL USUARION CON EL QUE SE INSTALO MYSQL
-
conexion=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/"+BD,USUARIO,PASS);
-
sentencia=conexion.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
-
//ESTA VARIABLE ES LA QUE VA GUARDAR LOS RESULTADOS QUE GENERE LA CONSULTA
-
//EL EXECUTEQUERY ES EL METODO QUE EJECUTA LA CONSULTA
-
resultado=sentencia.executeQuery(consulta);
-
//SI LA CONSULTA RETORNA VALORES LA VARIABLE RESULTADO SE UBICARA UNA POCOSION
-
//ANTES DEL PRIMER VALOR, ENTONCES SI SE CUMPLE QUE EXISTA UN VALOR EN LA SIGUIENTE
-
//POCISION EN TRARA AL WHILE
-
while(resultado.next())
-
{
-
//Y SE IMPRIMIRAN LOS VALORES DE LA CONSULTA, QUE SE OBTIENEN CON GETSTRING, SE LE PUEDE PASAR EL NUMERO O NOMBRE DE LA COLUMNA DE LA TABLA
-
System.out.println(resultado.getString("NOMBRE")+" | "+resultado.getString("TELEFONO")+" | "+resultado.getString("CORREO")+" | "+resultado.getString("TWITTER"));
-
}System.out.println("Estos son los datos de la agenda... ");
-
//TODO ESTO DEVE SIEMPRE DE IR DENTRO DE UN TRY, DE LO CONTRARIO NOS MARCAR UN ERROR
-
}
-
catch(Exception error)
-
{
-
System.out.println("Error: "+error);
-
}
-
-
}
-
public static void main( String[] arg )
-
{
-
agenda miAgenda = new agenda();
-
}
-
}
Para probar el codigo debemos ejecutarlo de la siguiente manera, primero debemos cambiarnos a la carpeta donde esta ubicado el archivo agenda.java y tecleamos lo siguiente
Si no obtenemos ningun error, lo ejecutamos asi
Y obtendremos esto
CODE:
-
ALAN GASCA | 57803747 | blue.star.boy@gmail.com | www.twitter.com/yovany
-
ALMA DELIA | 26461263 | almawook@yahoo.com | www.twitter.com/alma
Espero sea claro en la siguiente parte haremos una insercion y consulta con una interfas grafica, con netbeans, ojala les sea de utilidad.
vl4dy
April 22nd, 2008 at 12:34 pm
hola, he seguido los pasos, he verificado q la base de datos esta creada y todo pero, el programa en java no esta sacando los datos por la consola, sale el mensaje definido por el try catch.
yovany
April 22nd, 2008 at 10:55 pm
El error puede ser por varias cosas.
Puedes checar los permisos del usuario sobre la base de datos.
Comprueba tener instalado el driver de MySQL para la conexion.
Acabo de ver un detalle en el codigo copialo de nuevo y prueba otra vez para ver que error es el que te regresa el programa, y lo checamos.
Saludos
martin
November 23rd, 2009 at 4:07 pm
hola, che me podes pasar la dirección del mini howto 1, para ver primero como instalas lo necesario para que ande el codigo.
desde ya muchas gracias y está bien explicado, pero no me anda, supongo que no tengo instalado todo lo necesario, a pesar que ya intale mysql y java, pero no se si necesito algo más.
nos vemos chauuuu.
yovany
December 5th, 2009 at 8:51 pm
Hola Martin
Aqui esta el link para instalar el java y demas
http://vive-libre.com/blog/2008/03/09/como-instalar-netbeans-en-ubuntu/
Saludos y Felices Fiestas.