En este post mostramos un ejemplo de uso de la interface ResultSetMetaData el cual se extiende Wrapper que es una interfaz para las clases JDBC.
ResultSetMetaData nos sirve para consultar información (tipos y propiedades) sobre las columnas de un objeto ResultSet. Por ejemplo:
Para el ejemplo del post, usaremos la siguiente tabla llamada «mitabla«:
CREATE TABLE mitabla ( id int(20) NOT NULL PRIMARY KEY AUTO_INCREMENT, nombre varchar(64) NOT NULL, fnacimiento date NOT NULL, bio varchar(500) DEFAULT NULL, mail varchar(32) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
El código java es el siguiente:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; /** * @see https://www.jc-mouse.net/ * @author mouse */ public class Main { public static void main(String[] args) { String sql = " SELECT id, " + " nombre AS NombreCompleto," + " fnacimiento AS FechaNacimiento, " + " bio AS Biografia " + " FROM mitabla "; try (Connection connection = DriverManager .getConnection("jdbc:mariadb://localhost:3306/TutorialJava", "root", "")) { System.out.println("Conectado a la base de datos"); System.out.println("--- METADATOS ---"); ResultSet resultset = connection.createStatement().executeQuery(sql); ResultSetMetaData resultSetMetaData = resultset.getMetaData(); int totalCoumnas = resultSetMetaData.getColumnCount(); System.out.println("Total columnas: " + totalCoumnas); for (int col = 1; col <= totalCoumnas; col++) { System.out.println("\n--------------------------"); System.out.println("TABLA: " + resultSetMetaData.getColumnName(col)); System.out.println(" Tipo: " + resultSetMetaData.getColumnTypeName(col) + " Tamaño: " + resultSetMetaData.getColumnDisplaySize(col)); //isNullable() donde 0: columnNoNulls 1: columnNullable 2: columnNullableUnknown System.out.println(" Es Nullable: " + resultSetMetaData.isNullable(col)); System.out.println(" Autoincrementable: " + resultSetMetaData.isAutoIncrement(col)); System.out.println(" Label: " + resultSetMetaData.getColumnLabel(col)); } connection.close(); System.out.println("\nDesconectado de la base de datos"); } catch (SQLException ex) { System.err.println(ex.getMessage()); } } }
enjoy!
Una Interface Funcional es una interface que contiene uno y solo un método abstracto aunque puede contener métodos por d[...]
Los números narcisistas o números de Armstrong son aquellos números enteros positivos cuya suma de las n-ésim[...]
La clase hashMap es muy util para almacenar objetos de la forma ( Clave, Objeto ), donde Clave es un identificador único[...]
Este 12 de Mayo de 2017 se produjo un ataque masivo mundial del ransomware WannaCry el que afecto a más de 200000 comp[...]
Existen muchas plataformas CMS de código abierto excelentes, como Joomla y WordPress, así como algunas plataformas emerg[...]
Tojorí es una libreria Java/Mysql para la creación de aplicaciones de base de datos utilizando el IDE de Netbeans desde[...]