¡Buen día. coders! El siguiente ejercicio no los envía Pedro Oliveira desde Facebook. Diseñe un programa en java que permita conectarse a una base de datos MySQL y muestre los datos de la tabla producto.
MySQL
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL'; DROP SCHEMA IF EXISTS `KARDEX` ; CREATE SCHEMA IF NOT EXISTS `KARDEX` DEFAULT CHARACTER SET latin1 COLLATE latin1_spanish_ci ; USE `KARDEX` ; -- ----------------------------------------------------- -- Table `KARDEX`.`PRODUCTO` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `KARDEX`.`PRODUCTO` ( `COD_PROD` INT(5) NOT NULL , `DESC_PROD` VARCHAR(45) NOT NULL , `CATE_PROD` VARCHAR(45) NOT NULL , `MARCA_PROD` VARCHAR(45) NOT NULL , `PRE_PROD` DOUBLE NOT NULL , PRIMARY KEY (`COD_PROD`) ) ENGINE = InnoDB; CREATE UNIQUE INDEX `COD_PROD_UNIQUE` ON `KARDEX`.`PRODUCTO` (`COD_PROD` ASC) ; -- ----------------------------------------------------- -- Table `KARDEX`.`PROVEEDOR` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `KARDEX`.`PROVEEDOR` ( `COD_PROVE` INT(5) NOT NULL , `RUC_PROVE` INT NOT NULL , `NOM_PROVE` VARCHAR(45) NOT NULL , `APE_PROVE` VARCHAR(45) NOT NULL , `TELF_PROVE` INT(7) NOT NULL , `CORREO_PROVE` VARCHAR(45) NOT NULL , PRIMARY KEY (`COD_PROVE`) ) ENGINE = InnoDB; CREATE UNIQUE INDEX `COD_PROVE_UNIQUE` ON `KARDEX`.`PROVEEDOR` (`COD_PROVE` ASC) ; CREATE UNIQUE INDEX `RUC_PROVE_UNIQUE` ON `KARDEX`.`PROVEEDOR` (`RUC_PROVE` ASC) ; -- ----------------------------------------------------- -- Table `KARDEX`.`EMPLEADO` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `KARDEX`.`EMPLEADO` ( `COD_EMPLE` INT(5) NOT NULL , `NOM_EMPLE` VARCHAR(45) NOT NULL , `APE_EMPLE` VARCHAR(45) NOT NULL , `TELF_EMPLE` INT(7) NOT NULL , `FECHA_INGRE_EMPLE` VARCHAR(45) NOT NULL , `TIENDA_EMPLE` VARCHAR(45) NOT NULL , `TIPO_EMPLE` VARCHAR(45) NOT NULL , `PASSWORD` INT(5) NOT NULL , PRIMARY KEY (`COD_EMPLE`) ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1 COLLATE = latin1_spanish_ci; CREATE UNIQUE INDEX `COD_EMPLE_UNIQUE` ON `KARDEX`.`EMPLEADO` (`COD_EMPLE` ASC) ; CREATE UNIQUE INDEX `PASSWORD_UNIQUE` ON `KARDEX`.`EMPLEADO` (`PASSWORD` ASC) ; -- ----------------------------------------------------- -- Table `KARDEX`.`ALMACEN` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `KARDEX`.`ALMACEN` ( `ID_ALMA` INT(5) NOT NULL , `COD_PROD` INT(5) NOT NULL , `COD_PROVE` INT(5) NOT NULL , `STOCK` INT(11) NOT NULL , PRIMARY KEY (`ID_ALMA`) ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1 COLLATE = latin1_spanish_ci; CREATE UNIQUE INDEX `ID_ALMA_UNIQUE` ON `KARDEX`.`ALMACEN` (`ID_ALMA` ASC) ; -- ----------------------------------------------------- -- Table `KARDEX`.`KARDEX` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `KARDEX`.`KARDEX` ( `NUM_KARDEX` INT(5) NOT NULL , `COD_EMPLE` INT(5) NOT NULL , `MOVI_KARDEX` VARCHAR(45) NOT NULL , `OPERA_KARDEX` VARCHAR(45) NOT NULL , `DOCU_KARDEX` VARCHAR(45) NOT NULL , `COD_PROD` INT(5) NOT NULL , `COD_PROVE` INT(5) NOT NULL , `FECHA_KARDEX` VARCHAR(45) NOT NULL , `CANT_KARDEX` INT(11) NOT NULL , PRIMARY KEY (`NUM_KARDEX`) ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1 COLLATE = latin1_spanish_ci; CREATE UNIQUE INDEX `NUM_KARDEX_UNIQUE` ON `KARDEX`.`KARDEX` (`NUM_KARDEX` ASC) ; SET SQL_MODE=@OLD_SQL_MODE; SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; |
JAVA
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | import java.sql.*; public class ConexionBaseDatos { // Método principal que lanza la aplicación public static void main(String[] args) { // Instanciamos la clase Conexion Conexion conexion = new Conexion(); // Declarammos la siguientes variables locales Connection con = null; Statement stmt = null; ResultSet rs = null; try { // Establecemos la conexión a la base de datos con = conexion.conectar(); // Creamos un objetos statement para enviar sentencias sql a la base de datos stmt = con.createStatement(); // Ejecutamos la instrucción SQL dada, que devuelve un único objeto ResultSet rs = stmt.executeQuery("SELECT * FROM producto"); System.out.printf("%n%-10s%-25s%-15s%-15s%-15s%n", "Código", "Descripción", "Categoría", "Marca", "Precio"); System.out.println("-".repeat(75)); // Repetir '-' 75 veces // Recorremos el objeto ResultSet que contiene la información de la tabla consultada while (rs.next()) { // Mientras la llamada al método next() devuelva verdadero // Extraemos los valores de las columnas de la fila actual y lo imprimimos en consola int codigo = rs.getInt(1); String descripcion = rs.getString(2); String categoria = rs.getString(3); String marca = rs.getString(4); double precio = rs.getDouble(5); System.out.printf("%-10s%-25s%-15s%-15s%-15s%n", codigo, descripcion, categoria,marca, precio); } } catch (SQLException e) { // Atrapamos la excepción que puede lanzar el código anterior System.out.println("Error en la ejecución: " + e.toString()); e.printStackTrace(); } finally { // Al finalizar try { // Cerramos las posibles conexiones abiertas if (rs != null) rs.close(); if (stmt != null) stmt.close(); if (con != null) con.close(); } catch (Exception e) { System.out.println("Error cerrando conexiones: " + e.toString()); } } } } // Clase conexión class Conexion { // Definimos las propiedades de conexión a la base de datos // Serán estáticas final para que no cambien su valor private static final String driver = "com.mysql.cj.jdbc.Driver"; private static final String url = "jdbc:mysql://localhost:3306/kardex?serverTimezone=UTC&useSSL=false"; private static final String usuario = "root"; private static final String contraseña = "root"; // Definimos un bloque estático para cargar el driver de conexión MySQL // Se cargará una sola vez al iniciar el programa static { try { Class.forName(driver); } catch (Exception e) { System.out.println("Error al cargar el controlador"); e.printStackTrace(); } } // Método que establece y devuelve la conexión a la base de datos especificada // Será invocado y reutilizado cada vez que se quiera acceder a la base de datos public Connection conectar() { Connection con = null; try { con = DriverManager.getConnection(url, usuario, contraseña); System.out.println(">> Conexión exitosa"); } catch (SQLException e) { System.out.println("Error al obtener la conexión"); e.printStackTrace(); } return con; } } |
PROGRAMA
DESARROLLO TUS ALGORITMOS 🔥🔥
✅ 1. Envía tu algoritmo.
✅ 2. Indica en qué lenguaje de Programación lo deseas.
✅ 3. Para qué fecha lo quieres.
✅ 4. De que país eres (para tu forma de pago)
✅ 5. También se desarrollan al momento.
✅ 6. Los 3 primeros ejercicios son gratis.
🔸 Explico cada ejercicio que desarrollo en el código.
Cuenta Dcoder para más ejercicios de programación
Blog para novedades de programación
Tienda online para más recursos de programación
No hay comentarios, ¡cuéntame algo!
Me gustaría saber tu opinión. ¡Saludos!