Escolar Documentos
Profissional Documentos
Cultura Documentos
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.*;
public class conectar_BD {
public static String url = "jdbc:mysql//192.168.1.115/respaldo"; //
Ip_de_la_maquina/nombre_de_la_base_de_datos
public static String login = "root";
public static String password = "masterkey";
public int Filas=0, F=0;
public int Col=0, C=1, Ayuda=0;
public int util=0;
public Statement stm;
public ResultSet rs;
public Object elemento;
public static Connection conn = null;
public void conectar() {
Connection conn = null;
try {
Class.forName("org.gjt.mm.mysql.Driver");
conn = DriverManager.getConnection(url, login, password);
if (conn != null)
{
System.out.println("Conexin a base de datos "+url+" ... Ok");
}
}
catch(SQLException ex) {
System.out.println("Hubo un problema al intentar conectarse con la base de datos "+url);
System.out.println(ex);
}
catch(ClassNotFoundException ex) {
System.out.println ("La clase no fue encontrada");
System.out.println(ex);
}
}
public static void main (String args[]){ //Aqui solo es para ver si la conexion se realiza
conectar_BD conec = new conectar_BD();
conec.conectar();
}
}
Nota: Tienes q instalar una libreria q se llama mysql-conector-java-v.x.x.x.jar
buscala en google
Ojala y te sirva, si tienes dudas o algo, escribeme o mandame un correo
a doko_1988_conde@live.com.mx
Suerte y no te desesperes!!!
--------}}
2.2 Si la mquina esta conectada a internet a traves de una red interna cion cortafuegos accedes a
mysql por:
http://ip_de_la_maquina:puerto/phpmyadmin
Bien, no voy a explicar en este tema como montar un servicio mysql, ya que me quedara
demasiado extenso, ms adelante es posible que me anime, pero por el momento vamos
a ver solamente el cdigo necesario para conectarnos a nuestra base de datos y recorrer
sus tablas. Podis buscar en Google como montar un servicio mysql, hay tutoriales a
patadas.
[descargar conector]
Es imprescindible para poder conectar nuestra base de datos. As pues, para cada tipo de
motor de base de datos necesitaremos su librera o conector, lo cual, normalmente, se
ofrece en la pgina principal del fabricante que utilicemos. Es algo muy comn.
una vez descargado el conector, lo agregamos en nuestro proyecto, para ello hacemos lo
siguiente:
Pulsamos sobre nuestro proyecto con el botn derecho del ratn y pulsamos, al
final de la lista desplegable, en propiedades.
Una vez hecho esto se nos abrir una ventana donde elegiremos la opcin "va de
construccin":
En la siguiente ventana que se nos abre, elegiremos la pestaa "Biblioteca" y
pulsaremos sobre la opcin"Aadir JAR externo...", donde nos permitir elegir
nuestro conector descargado:
Una vez elegido nuestro conector, se nos mostrar en la va de construccin y
habremos agregado a nuestro proyecto una nueva librera.
Bien, ya tenemos nuestra librera dentro de nuestro proyecto. Antes de nada me gustara
agregar que voy a trabajar sobre una base de datos llamada empresa con una tabla
llamada empleados. Dicha tabla constara de 3 columnas:
ID
Nombre
Departamento
Bueno, ahora lo que nos toca crear es una clase capaz de establecer una conexin. Esta
clase constar de 4 atributos:
private static String servidor: Aqu colocaremos la ruta de nuestra base de
datos.
private static String user: El nombre de usuario de mysql
private static String pass: La clave de usuario de mysql
private static String driver: Nuestra librera mysql.
Y crearemos un objeto de la clase Connection del paquete java.sql para crear
la conexin:
private static Connection conexion: Nos devuelve la conexin.
create table datos(
tipoO varchar(15),
fecha date,
rif varchar(15),
monto double,
total double,
concepto text
);
Como veis, establezco la ruta del servidor, utilizo el usuario y el pass que viene por
defecto en mysql, indico la posicin deldriver y creo el objeto Connection.
1. Levantar el driver.
2. Establecer la conexin.
Bien, con el mtodo esttico de la clase "class" levanto el driver que le paso por
argumentos:
Class.forName(driver);
Con el objeto Conecction obtengo la conexin por medio del mtodo
esttico getConnection de la clase DriverManager, pasndole por argumentos
el servidor, el usuario y el pass:
conexion=DriverManager.getConnection(servidor,user,pass);
Finalmente creamos un mtodo para obtener el objeto de la clase Connection con la
conexin establecida:
Bueno, ahora crearemos una sentencia condicional switch, dentro de un bucle do/while,
para que vaya dndonos las opciones que queramos realizar hasta salir de la aplicacin, y
todo esto, dentro del mtodo MAIN:
Bueno, aqu podis ver las opciones que tendr nuestro men:
Insertar
Modificar
Eliminar
Mostrar
Salir
En el blucle do/while establecemos que no se saldr del men hasta que la opcin 5 sea
elegida. Ahora vamos a ir explicando los mtodos realizados para completar todas las
funciones del men:
INSERTAR:
Por pasos:
Cargamos nuestra conexin.
conexion=new Conexion();
Pasamos al objeto Connection de esta clase la conexin de la clase
"Conexion" por medio de nuestro mtodo getConnection():
Connection con=conexion.getConnection();
Creamos un objeto de la clase Statement, la cual ser la encargada de
procesar la sentencia sql que le pasemos e interactuar con nuestra base de datos.
Statement st;
Pedimos los datos por pantalla y por medio del objeto teclado de la
clase Scanner, leemos los datos que deseemos agregar. Una cosa antes de continuar, es
que, aunque mi tabla consta de 3 campos, yo tengo establecido el primero (ID)
como primary key, y he establecido que se auto-incremente, por lo tanto no tengo que
introducirselo.
Una vez introducido los datos, creamos la sentencia sql para insertarlos en
nuestra base de datos.
String sql="insert into empleados(nombre,departamento)
values ('"+nombre+"','+departamento+"')";
Hay que darse cuenta que los "values" que le pasamos han de
estar entre comillas simples ''.
Establecemos la comunicacin entre nuestra aplicacin java y la base de
datos:
st=con.createStatement();
Le indicamos que ejecute la actualizacin de la tabla y le pasamos por
argumentos nuestra sentenciasql:
st.executeUpdate(sql);
Cerramos las conexiones, en orden inverso a su apertura:
st.close();
con.close();
Con esto ya podremos insertar filas en nuestra base de datos.
Modificar:
Por pasos:
Cargamos nuestra conexin.
conexion=new Conexion();
Pasamos al objeto Connection de esta clase la conexin de la clase
"Conexion" por medio de nuestro mtodo getConnection():
Connection con=conexion.getConnection();
Creamos un objeto de la clase Statement, la cual ser la encargada de
procesar la sentencia sql que le pasemos e interactuar con nuestra base de datos.
Statement st;
Pedimos por teclado el nmero de ID del registro a modificar y se lo
asignamos a una variable tipo int llamada "n", posteriormente volvemos a pedir el nombre
y el departamento para modificarlos.
Creamos nuestra sentencia sql:
String sql="update empleados set nombre='"+nombre+"',
departamento='"+departamento+"' where id="+n;
Establecemos la comunicacin entre nuestra aplicacin java y la base de
datos:
st=con.createStatement();
Le indicamos que ejecute la actualizacin de la tabla y le pasamos por
argumentos nuestra sentencia sql:
st.executeUpdate(sql);
Cerramos las conexiones, en orden inverso a su apertura:
st.close();
con.close();
Esta vez le he puesto una sentencia "if" para que me avise de si se modifico con xito o
no. Con esto podremos modificar nuestros registros.
Eliminar:
Llegados a este punto, ya te deberas de dar cuenta de que lo nico que cambio es la
sentencia sql, el resto es uncopy/paste, para que veas que no es tan complicado como
parece.
Mostrar:
Esta vara un poco con respecto a las otras:
Cargamos nuestra conexin.
conexion=new Conexion();
Pasamos al objeto Connection de esta clase la conexin de la clase
"Conexion" por medio de nuestro mtodo getConnection():
Connection con=conexion.getConnection();
Creamos un objeto de la clase Statement, la cual ser la encargada de
procesar la sentencia sql que le pasemos e interactuar con nuestra base de datos.
Statement st;
Creamos un objeto de la clase ResultSet que ser la encargada de
devolvernos los resultados de los registros:
ResultSet rs;
Creamos nuestra sentencia sql:
String sql="select * from empleados";
Establecemos la comunicacin entre nuestra aplicacin java y la base de
datos:
st=con.createStatement();
Le pasamos al objeto de ResultSet el resultado de ejecutar la
sentencia sql:
rs=st.executeQuery(sql);
En este caso no actualizamos la tabla (executeUpdate()), sino que
realizamos una consulta (executeQuery());
Por medio de un bucle while vamos recorriendo valores mientras
existan (rs.next()) y por medio de los mtodos getInt y getString obtenemos los valores
de las diferentes columnas, tened en cuenta de que le tenemos que pasar el nmero de
columna:
while (rs.next){
System.out.println("ID:"+rs.getInt(1));
System.out.println("Nombre: "+rs.getString(2));
System.out.println("Departamento: "+rs.getString(3));
System.out.println("**************************");
}
Cerramos las conexiones, en orden inverso a su apertura:
rs.close();
st.close();
con.close();
Bien, con esto doy por terminada la entrada, mencionar que esto es algo muy bsico del
JDBC pero suficiente para empezar a explorarlo. Un saludo a todos.