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!
Las herramientas Online son cada vez más comunes y pueden encontrarse herramientas para casi todo tipo de tareas, en est[...]
Nivel: Intermedio-Avanzado IDE: Netbeans 6.9 o Sup. Tiempo: 30 minutos En este tutorial crearemos una aplicación que nos[...]
Java Excel API es un API para java que permite a los desarrolladores leer y escribir en hojas de cálculo Excel. jexcelap[...]
Problema: Implemente el código necesario en Kotlin para resolver una ecuación de segundo grado de números reales: Soluci[...]
El desarrollo web moderno exige no solo funcionalidad, sino también un poco de estética diferenciada en cada componente[...]
El Viaje Astral del Tata Quispe, así titula un nuevo juego boliviano desarrollado por la empresa VReality el cual esta i[...]