There are times that you might need to create a database or tables right after you run your program instead of manually creating it. In this example, I will show you how you can do this using JDBC and MySQL database. The first thing we need to do as usual when creating a JDBC program is to define a JDBC URL. One thing that you’ll notice here is that we don’t define the database name in the URL. So the URL will be like jdbc:mysql://localhost
.
After defining the URL, we need to create a connection to the database. We issued the DriverManager.getConnection()
method and pass the URL
, username
and password
as the arguments. The next step is to create a PreparedStatement
. When we call the preparedStatement()
method we pass an SQL command to create the database, which is CREATE DATABASE IF NOT EXISTS demodb
. This will create a new database if there is no database with demodb
name exists in the database. Finally, call the PreparedStatement
‘s execute()
method
Now you can try for your self, start typing the following code snippet in your text editor or IDE, and execute it to create the database.
package org.kodejava.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class CreateMySQLDatabaseExample {
public static void main(String[] args) {
// Defines the JDBC URL. As you can see, we are not specifying
// the database name in the URL.
String url = "jdbc:mysql://localhost";
// Defines username and password to connect to database server.
String username = "root";
String password = "root";
// SQL command to create a database in MySQL.
String sql = "CREATE DATABASE IF NOT EXISTS demodb";
try (Connection conn = DriverManager.getConnection(url, username, password);
PreparedStatement stmt = conn.prepareStatement(sql)) {
stmt.execute();
} catch (Exception e) {
e.printStackTrace();
}
}
}
After you are executing the code snippet above you will find a new database named demodb
created in your MySQL database server.
Maven Dependencies
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>8.1.0</version>
</dependency>
- How do I create a string of repeated characters? - September 1, 2023
- How do I convert datetime string with optional part to a date object? - August 28, 2023
- How do I split large excel file into multiple smaller files? - April 15, 2023
On compiling this error showed up can you help me with this.
Hi Bharat,
You need to add the JDBC Driver for MySQL to the classpath when compiling or running the code. It can be downloaded from Download Connector/J website.
If you are using Maven you can add the dependencies as added in the post above, or you can also download the
jar
file.Hi, I get the error that acces is denied.
Hi Pieter,
Have you provided the correct username and password to connect to your MySQL server?