Hola! Estoy haciendo un proyecto, pero no tengo mucha experiencia en java, sin embargo necesito cdigos para insertar, modificar y eliminar datos de mi base de datos (ya conectada) desde netbeans. Si me pudieran facilitar algn cdigo estara realmente MUY agradecido. Porfa aydenme! :) Gracias de antemano =D hace 3 aos Reportar abusos leord Mejor respuesta - elegida por los votantes http://caminolibre.com/index.php?option= Camino Libre Programacin web con herramientas libres y negocios en internet Tutorial de Java Tutorial de PHP Conectando JAVA con MySql usando JDBC 01.- Conectando JAVA con MySql usando JDBC Escrito por Administrator viernes, 27 de abril de 2007 Conectando JAVA con MySql usando JDBC. En esta seccin mostraremos como acceder a una base de datos usando JDBC. Introduccin. JDBC es un API de Java para acceder a manejadores de bases de datos, y prcticamente a cualquier tipo de dato tabular. El API JDBC consiste de un conjunto de clases e interfaces que permiten a cualquier programa Java acceder a sistemas de bases de datos de forma homognea. En otras palabras, con el API JDBC no es necesario escribir un programa para accesar a Sybase, otro programa para accesar a Oracle, y otro programa para accesar a MySQL; con esta API, se puede crear un slo programa que sea capaz de enviar sentencias SQL a la base de datos apropiada. Nuestra aplicacin Java debe tener acceso a un controlador (driver) JDBC adecuado. Este controlador es el que implementa la funcionalidad de todas las clases de acceso a datos y proporciona la comunicacin entre el API JDBC y la base de datos real. De una manera muy simple. Entonces, para efectuar nuestro ejemplo de conexin necesitaremos: El servidor MySql correctamente instalado El conector correctamente instalado. Empezemos con el servidor, en este caso podemos levantarlo fcilmente con un programa como EasyPhp, basta con instalarlo he iniciar el programa para tener un servidor MySql corriendo, podremos administrarlo con la interfaz phpMyAdmin en la direccin local: http://localhost/mysql/ Ahora el conector. Dnde obtenerlo? En la pgina oficial de MySql encontraremos diferentes versiones, en los ejemplos utilic la versin 3 del conector que puedes descargar en un paquete incluyendo el cdigo aqu, tambin puedes encontrar el archivo jar desempaquetado en la carpeta de los cdigos de ste curso. Cmo instalarlo? Del sitio descargamos un zip o un tar.gz, en ambos casos necesitaremos descomprimir el archivo jar que viene dentro, en este caso se llama mysql-connector-java-3.0.17-ga-bin.jar A continuacin colocamos el archivo en algn lugar de nuestra computadora, y agregamos la ruta al CLASSPATH. Por ejemplo, en mi caso el valor del CLASSPATH qued as: CLASSPATH=C:\Archivos de programa \Java\jre1.6.0_01\lib\mysql-connector-java- 3.0.17-ga-bin.jar; El ejemplo ms sencillo de una conexin: Conexion Sencilla import java.sql.*;
public class Conexion { public static void main(String args[]) { try { //Cargamos el puente JDBC => Mysql System.out.println("Intentando cargar el conector..."); Class.forName("com.mysql.jdbc.Driver");
//Intentamos conectarnos a la base de Datos en este caso una base llamada temp System.out.println("Conectando a la base..."); Connection con = DriverManager.getConnection( "jdbc:mysql://localhost/temp", "root", "" ); System.out.println("Conexion a BD establecida");
} catch(SQLException ex) { System.out.println("Error de mysql"); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch(Exception e) { System.out.println("Se produjo un error inesperado: "+e.getMe ssage()); } } } /* Debe producir una salida como esta: Intentando cargar el conector... Conectando a la base... Conexion a BD establecida */ Trabajemos con datos almacenados. Creamos una base de datos llamada prueba y le creamos una tabla con el siguiente cdigo: CREATE TABLE `usuarios` ( `login` varchar(10) NOT NULL default , `password` varchar(10) NOT NULL default , PRIMARY KEY (`login`) ) INSERT INTO `usuarios` VALUES (adrian, adrian); INSERT INTO `usuarios` VALUES (ernesto, ern123); INSERT INTO `usuarios` VALUES (juan, jua123); INSERT INTO `usuarios` VALUES (pedro, ped123); Ahora ejecutemos el siguiente programa que usa la sentencia SQL llamada SELECT: ConexionSelect.java import java.sql.*; import java.io.*; public class ConexionSelect { public static void main(String args[]) { try { Class.forName(com.mysql.jdbc.Driver); Connection con = DriverManager.getConnection( jdbc:mysql://localhost/prueba, root, ); System.out.println(Conexion a BD establecida); Statement stmt = con.createStatement(); ResultSet rs=stmt.executeQuery(SELECT * FROM usuarios); System.out.println(Login\tPassword); while(rs.next()) { System.out.println(rs.getString(login)+\t+rs.getString(password)); } } catch(SQLException ex) { System.out.println(Error de mysql); } catch(Exception e) { System.out.println(Se produjo un error inesperado: +e.getMessage()); } } } /* Este programa nos arroja una salida como esta: Conexion a BD establecida Login Password adrian adrian ernesto ern123 juan jua123 pedro ped123 */ El siguiente programa que usa la sentencia SQL llamada INSERT: ConexionInsert.java import java.sql.*; import java.io.*; public class ConexionInsert { public static void main(String args[]) { try { Class.forName(com.mysql.jdbc.Driver); Connection con = DriverManager.getConnection( jdbc:mysql://localhost/prueba, root, ); System.out.println(Conexion a BD establecida); Statement stmt = con.createStatement(); int respuesta=stmt.executeUpdate( INSERT INTO usuarios VALUES( + args[0] + , + args[1] + ) ); if(respuesta==1){ System.out.println(Se agreg el registro de manera exitosa); } else{ System.out.println(Ocurrio un problema al agregar el registro); } } catch(SQLException ex) { // Mostramos toda la informacion sobre el error disponible System.out.println( Error: SQLException ); while (ex != null) { System.out.println (SQLState: + ex.getSQLState ()); System.out.println (Mensaje: + ex.getMessage ()); System.out.println (Vendedor: + ex.getErrorCode ()); ex = ex.getNextException(); System.out.println (); } } catch(Exception e) { System.out.println(Se produjo un error inesperado: +e.getMessage()); } } } /* Para ejecutar este programa hacemos algo como esto: D:\>java ConexionInsert julio jul123 Y debe arrojar esto: Conexion a BD establecida Se agrego el registro de manera exitosa */
http://casidiablo.net/ejemplo-basico-de- Ah hay un par de tutoriales con lo ms bsico, si necesitas ms puedes poner en google "jdbc mysql" y aparecern muchos ms JDBC es la API ms conocida para conectar programas Java con bases de datos de cualquier tipo (mysql, postgresql, oracle, etc). Fuente(s): Estudio Ingeniera de Sistemas Google hace 3 aos Reportar abusos 67% 2 votos 0 estrellas - seleccinala por ser: Interesante! Correo Comentario (0) Guardar o o o
Esta pregunta "Cdigo para inserta " fue publicada originalmente en Yahoo! Respuestas Espaa Otras respuestas (1) dikas Digamos q tienes un objeto Persona: id, nombre, apellido, edad.
Answer 2por votarfavorito Como en el ttulo: por cierto, me depurar mi aplicacin, por lo que en lnea, donde pongo cuerdas en la variable PreparedStatement, caracteres especiales estn cambiando a "?". Yo en realidad no s dnde buscar las cosas que deben repararlo, as que no s si el cdigo es necesario .. De todos modos, voy a poner un poco de aqu: PreparedStatement stm = NULL ; cadena sql = "" ;
mientras que el campo "nombre" depuracin tena razn al objeto mtodo, pero despus de aadir que en la variable stm, cambi sus personajes de '?'. He encontrado un tema sobre el sitoatuin similar en SO, pero no hubo ninguna respuesta que me podra ayudar ya que exactely saber que hay algo no est bien en la adicin a la declaracin de cadena, no en base de datos. Pero yo no s qu .. Cualquier sugerencias? PS. Estoy utilizando NetBeans 6.7.1 versin EDIT: Me depuracin con estndar netbeans depurador, y estaba comprobando el estado de las variables antes de agregar cadenas a 'stm' variable. Yo estaba cambiando incluso getName () para cadena esttica con caracteres especiales. As que para asegurarse de que todo est bien con la clase de mtodos. Edit2: He hecho una prueba ms. Variables Chequeado stm y una de sus propiedades es "charEncoding", que se ajusta a "cp1252". As que la pregunta principal es .. cmo cambiar eso? java preparados declaracin compartir | mejorar esta pregunta editado 18 de enero '11 a las 13:55
pidi 18 de enero '11 a las 12:56
Seraphis 4431415
Cmo fue comprobar esto? Qu herramienta se utiliza para verificar los datos en la base de datos? - skaffman 18 de enero '11 a las 13:01
Ests diciendo que el valor de retorno de method.getName () cambia despus de que haya sido llamado? - Joachim Sauer 18 de enero '11 a las 13:01
Nunca hacer catch (Exception e) {} - si ocurre una excepcin, usted no sabr que lo hizo y lo que sali mal. Al imprimir menos, el seguimiento de pila: catch (Exception e) {e.printStackTrace ();} - Jesper18 de enero '11 a las 13:20