Ir al contenido

Crear tabla con Java JDBC

Hoy vamos a ver cómo podemos crear tabla con Java JDBC. Analizaremos los pasos que hay que dar para poder conectarnos a una base de datos mediante JDBC y conseguir crear una tabla.

Lo primero que haremos para crear tabla con Java JDBC será conectarnos a la base de datos. Tenéis explicado en detalle cómo conectarnos a una base de datos con Java JDBC en “Conectarnos a una base de datos con JDBC”. En este caso vamos a utilizar una base de datos MySQL, pero podríamos utilizar cualquier tipo de base de datos.

Connection con = null;
Properties props = new Properties();
props.put("user", "usuario");
props.put("password", "password");
con = DriverManager.getConnection("jdbc:mysql://[localhost:3306/mibasedatos](http://localhost:3306/mibasedatos)", props);

Vemos que utilizamos el método .getConnection() enviándole la cadena de conexión y un fichero de propiedades donde va la información del usuario y password.

Lo siguiente será preparar la sentencia de creación de la base de datos. Vamos a utilizar la sentencia SQL CREATE TABLE. La estructura de la sentencia SQL CREATE TABLE es la siguiente:

CREATE TABLE nombre_tabla (
campo1 tipo_campo atributos,
campo2 tipo_campo atributos,
...
);

Dónde los tipos de campos pueden ser:

  • Cadenas: char, varchar,…
  • Números: tinyint, smallint, int, bigint,…
  • Fechas: date, datetime,…

Y entre los atributos podemos tener diferentes alternativas como:

  • NOT NULL: si queremos que el campo no pueda albergar nulos.
  • AUTO_INCREMENT: si queremos que el número se incremente automáticamente.
  • CURRENT_TIMESTAMP: para asignarle la fecha de la creación del registro

En este caso montaremos la siguiente sentencia SQL CREATE TABLE:

CREATE TABLE paises (
pais varchar(50) NOT NULL,
acronimo CHAR(3),
poblacion INT(20)
)

Esta sentencia vamos a ponerla dentro de una clase PreparedStatement:

PreparedStatement stmt = null;
stmt = con.prepareStatement("CREATE TABLE paises (pais varchar(50) NOT NULL, acronimo CHAR(3), poblacion INT(20))");

Una vez creada pasaremos a ejecutarla:

stmt.execute();

Es importante saber que la ejecución de una sentencia SQL puede generar una SQLException, por lo cual el código anterior lo deberemos de poner dentro de un bucle try-catch.

try {
stmt = con.prepareStatement("CREATE TABLE paises (pais varchar(50) NOT NULL, acronimo CHAR(3), poblacion INT(20))");
stmt.execute();
stmt.close();
} catch (SQLException sqle) {
System.out.println("Error en la ejecución: " + sqle.getErrorCode() + " " + sqle.getMessage());
}

De esta forma ya habremos conseguido crear tabla con Java JDBC.

Foto de Víctor Cuervo

Víctor Cuervo

Programador, Arquitecto IT, álter ego de Línea de Código, amante de las tecnologías, generador de conocimiento y facilitador del aprendizaje.

Descarga el código de Crear tabla con Java JDBC

Se explica cómo crear tabla con Java JDBC conectándose a una base de datos MySQL y ejecutando sentencias SQL.

Descargar código
Pon a prueba tu conocimiento
JDBC en Java

¿Qué clase se utiliza para conectarse a una base de datos en JDBC?

  • A DatabaseConnection
  • B DriverManager
  • C ConnectionFactory
  • D DBConnect