Kode Java – Learn Java by Examples

Learn Java by Examples

Java

Java

  • Java
    • Basic
    • Core API
    • 2D API
    • Lang Package
    • Util Package
    • Applet
    • AWT
    • Networking
    • Java Date Time API
    • Concurrency
    • Cryptography
    • IO
    • Logging
    • Zip and GZIP
    • Reflection
    • Regex
    • JDBC
    • Scripting
    • Stream API
    • Beans
    • Mail
    • Security
    • XML
    • Sound API
    • Swing
    • HttpClient
    • Java 8
    • Java 9
    • Java 10
    • Java 11
    • Java 12
    • Java 14
    • Java 15
    • Java 16
    • Java 17
    • Java 25
Spring

Spring

  • Spring
    • Spring Core
    • Spring JDBC
    • Spring MVC
    • Spring Boot
Persistence

Persistence

  • Persistence
    • Java Persistence API
    • Hibernate
    • MyBatis
Servlet

Servlet

  • Servlet
    • Servlet
    • JSP
    • Taglib
Other Libraries

Other Libraries

  • Other Libraries
    • Apache Commons
    • Apache HttpComponents
    • Apache POI
    • E-iceblue Spire
    • Google Gson
    • iText PDF
    • Jackson
    • Jasypt
    • JDOM
    • Joda-Time
    • jPOS
    • JSch
    • JSON-Java
    • Project Lombok
    • ZK Framework
Patterns

Patterns

  • Patterns
    • Creational Patterns
Android

Android

  • Android
    • Android Misc
Databases

Databases

  • Databases
    • Learning SQL
    • MySQL
    • MongoDB
    • Microsoft Access
JVM Languages

JVM Languages

  • JVM Languages
    • Kotlin
Tools

Tools

  • Tools
    • IntelliJ IDEA
    • Gradle
    • JUnit
    • Maven
    • OS X
    • Ubuntu
    • PlantUML
    • UML
Partners

Partners

  • Partners
    • Buku Java ID

Advertisement

Tag Archives: DatabaseMetaData

How do I get JDBC driver information?

By Wayan in JDBC Last modified: June 28, 2024 0 Comment

JDBC stands for Java Database Connectivity. It is an API (Application Programming Interface) in Java that allows Java applications to interact with databases. JDBC provides a set of interfaces and classes for connecting to a database, executing SQL queries, and retrieving results.

It is part of the Java Standard Edition platform and is designed to be database-independent, enabling Java developers to write database code that can work with different database management systems (DBMS) without significant changes.

Key features of JDBC include:

  1. Connection Management: Establishing and managing a connection to a database.
  2. Statement Execution: Executing SQL queries and updates using various types of statements.
  3. Result Set Handling: Retrieving and processing the results of queries.
  4. Transaction Management: Managing transactions to ensure data integrity.
  5. Metadata Access: Retrieving metadata about the database and its structure.

Here is the code snippet to get the basic information about JDBC driver such as the driver name and the version.

package org.kodejava.jdbc;

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

public class JDBCDriverInfo {
    private static final String URL = "jdbc:mysql://localhost/kodejava";
    private static final String USERNAME = "kodejava";
    private static final String PASSWORD = "s3cr*t";

    public static void main(String[] args) {
        try (Connection conn =
                     DriverManager.getConnection(URL, USERNAME, PASSWORD)) {

            DatabaseMetaData metadata = conn.getMetaData();
            String driverName = metadata.getDriverName();
            String driverVersion = metadata.getDriverVersion();
            int majorVersion = metadata.getDriverMajorVersion();
            int minorVersion = metadata.getDriverMinorVersion();

            System.out.println("Driver Name    = " + driverName);
            System.out.println("Driver Version = " + driverVersion);
            System.out.println("Major Version  = " + majorVersion);
            System.out.println("Minor Version  = " + minorVersion);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

The result of our program:

Driver Name    = MySQL Connector/J
Driver Version = mysql-connector-j-8.4.0 (Revision: 1c3f5c149e0bfe31c7fbeb24e2d260cd890972c4)
Major Version  = 8
Minor Version  = 4

Maven Dependencies

<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <version>8.4.0</version>
</dependency>

Maven Central

How do I get a list of stored procedure names?

By Wayan in JDBC Last modified: May 31, 2024 0 Comment
package org.kodejava.jdbc;

import java.sql.*;

public class StoredProcedureListExample {
    private static final String URL = "jdbc:mysql://localhost/kodejava";
    private static final String USERNAME = "kodejava";
    private static final String PASSWORD = "s3cr*t";

    public static void main(String[] args) {
        try (Connection conn =
                     DriverManager.getConnection(URL, USERNAME, PASSWORD)) {

            DatabaseMetaData metadata = conn.getMetaData();
            ResultSet result = metadata.getProcedures("kodejava", "%", "%");

            System.out.println("Catalog - Schema - Name");
            while (result.next()) {
                System.out.println(result.getString("PROCEDURE_CAT") +
                        " - " + result.getString("PROCEDURE_SCHEM") +
                        " - " + result.getString("PROCEDURE_NAME"));
            }

        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

Maven Dependencies

<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <version>8.4.0</version>
</dependency>

Maven Central

How do I use DatabaseMetaData to get table column names?

By Wayan in JDBC Last modified: May 31, 2024 0 Comment

In this example, we are using the DatabaseMetaData to retrieve table’s column names. The metadata information can be obtained by calling the connection.getMetaData(). Next, we can then get a ResultSet object by calling metadata.getColumns() method and passing the catalog name, schema pattern, table name pattern, and column name pattern.

From this result set COLUMN_NAME, TYPE_NAME, COLUMN_SIZE and other information can be read.

package org.kodejava.jdbc;

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DbMetadataExample {
    private static final String URL = "jdbc:mysql://localhost/kodejava";
    private static final String USERNAME = "kodejava";
    private static final String PASSWORD = "s3cr*t";

    public static void main(String[] args) {
        try (Connection connection =
                     DriverManager.getConnection(URL, USERNAME, PASSWORD)) {

            DatabaseMetaData metadata = connection.getMetaData();
            ResultSet resultSet =
                    metadata.getColumns("kodejava", null, "book", null);

            while (resultSet.next()) {
                String name = resultSet.getString("COLUMN_NAME");
                String type = resultSet.getString("TYPE_NAME");
                int size = resultSet.getInt("COLUMN_SIZE");

                System.out.println("Column name: [" + name + "]; " +
                        "type: [" + type + "]; size: [" + size + "]");
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

A bit information of book table described below:

Column name: [id]; type: [BIGINT UNSIGNED]; size: [20]
Column name: [isbn]; type: [VARCHAR]; size: [50]
Column name: [title]; type: [VARCHAR]; size: [100]
Column name: [published_year]; type: [INT]; size: [10]
Column name: [price]; type: [DECIMAL]; size: [10]

Maven Dependencies

<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <version>8.4.0</version>
</dependency>

Maven Central

How do I get all table names from a database?

By Wayan in JDBC Last modified: May 31, 2024 0 Comment
package org.kodejava.jdbc;

import java.sql.*;

public class GettingTableListExample {
    private static final String URL = "jdbc:mysql://localhost/kodejava";
    private static final String USERNAME = "kodejava";
    private static final String PASSWORD = "s3cr*t";

    public static void main(String[] args) {
        try (Connection connection =
                     DriverManager.getConnection(URL, USERNAME, PASSWORD)) {

            // Gets the metadata of the database
            DatabaseMetaData metaData = connection.getMetaData();
            String[] types = {"TABLE"};

            ResultSet rs = metaData.getTables("kodejava", "kodejava", "%", types);
            while (rs.next()) {
                String tableCatalog = rs.getString(1);
                String tableSchema = rs.getString(2);
                String tableName = rs.getString(3);

                System.out.printf("%s - %s - %s%n",
                        tableCatalog, tableSchema, tableName);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Here is the result:

kodejava - null - author
kodejava - null - book_author
kodejava - null - book

Maven Dependencies

<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <version>8.4.0</version>
</dependency>

Maven Central

Advertisement

Advertisement

© 2026 Kode Java - Made with ♡ in Bali, Indonesia