Crear una base de datos en Java

04/Oct/2021 Java , , , 1 Comentario
Programación en Java

La librería Java JDBC nos permite realizar cualquier tipo de operación sobre una base de datos, ya sean consultas, inserciones, borrados,… una de estas operaciones que podemos hacer es crear una base de datos en Java.

La creación de una base de datos puede que sea algo más inusual, ya que normalmente nos encontraremos en la situación de que ya existe y solo necesitaremos lanzar operaciones de consulta o actualización sobre la misma. Si bien es verdad que en un proceso inicial de la aplicación y si queremos mantener una coherencia entre el software y los datos, puede ser una buena práctica el realizar la creación de la base de datos por código y no mediante script con un administrador de base de datos o DBA.

Lo primero que tenemos que saber para poder crear una base de datos en Java es que hay que importar la librería Java JDBC. Aunque podemos importarla entera, lo suyo es importar solo las clases que vayamos a utilizar, a la sazón:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

Una vez que tenemos la librería Java JDBC importada lo que haremos será definir lo que será la cadena de conexión y el objeto Connection sobre el que quedará establecida.

Connection con = null;
String sURL = "jdbc:mysql://localhost:3306/lineadecodigo";

Ahora nos apoyaremos en el DriverManager para establecer la conexión. Para ello necesitamos la cadena de conexión que acabamos de definir, un usuario y password.

con = DriverManager.getConnection(sURL,"root","victor");

Hay que tener especial atención al usuario que utilizamos ya que la operación de creación de base de datos necesita más permisos que las operaciones normales de consulta y actualización. Es por ello que el usuario de estos programas suele ser diferente al resto que utilicemos en nuestros programas.

Una vez establecida la conexión lo que vamos es a lanzar una operación de creación de la base de datos. Para ello tenemos que recurrir a la sentencia SQL de creación. La cual tiene, a grandes rasgos, la siguiente sintaxis:

CREATE DATABASE nombre_tabla;

Así que vamos a recurrir a un objeto Statement que será con el que ejecutemos la consulta mediante su método .execute()

Statement stmt = con.createStatement();
stmt.execute("create database lineadecodigo");

Es importante saber qué tanto a la hora de obtener la conexión, como a la hora de ejecutar la sentencia puede generarse una excepción SQLException. Es por ello que debemos de operarlo con una estructura try-catch. De esta manera el código entero que nos permite crear una base de datos en Java sería la siguiente:

Connection con = null;
String sURL = "jdbc:mysql://localhost:3306/lineadecodigo";

try {
  con = DriverManager.getConnection(sURL,"root","victor");
  Statement stmt = con.createStatement();
  stmt.execute("create database lineadecodigo");
  System.out.println("Base de datos creada correctamente");
} catch (SQLException e) { 
  System.out.println("Error en la conexión:" + e.toString() );
} finally {
  try {
    // Cerramos posibles conexiones abiertas
    if (con!=null) con.close();    
  } catch (Exception e) {
    System.out.println("Error cerrando conexiones: "
      + e.toString());
  } 
}

 

Vídeos sobre Java


Un comentario en “Crear una base de datos en Java”

Víctor Cuervo

Cojon_Nocturno

Hola!! Un pequeño apunte, al no estar creada la BBDD antes de hacer la conexión te daría un error diciendo que esa BBDD no existe.
la url para la conexión sería:

String sURL = «jdbc:mysql://localhost:3306»;

De esta forma hace la conexión a esa url y ya puedes ejecutar la query de CREATE TABLE lineadecodigo.

En el siguiente método que hagas para abir la conexion a la BBDD ya si que la url sería :

«jdbc:mysql://localhost:3306/lineadecodigo»;

Saludos

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.