package org.kodejava.jdbc;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class SqlLimitExample {
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)) {
// Create PreparedStatement to get all data from a database.
String query = "select count(*) from product";
PreparedStatement ps = connection.prepareStatement(query);
ResultSet result = ps.executeQuery();
int total = 0;
while (result.next()) {
total = result.getInt(1);
}
System.out.println("Total number of data in database: " +
total + "\n");
// Create PreparedStatement to the first 5 records only.
query = "select * from product limit 5";
ps = connection.prepareStatement(query);
result = ps.executeQuery();
System.out.println("Result fetched with specified limit 5");
System.out.println("====================================");
while (result.next()) {
System.out.println("id:" + result.getInt("id") +
", code:" + result.getString("code") +
", name:" + result.getString("name") +
", price:" + result.getString("price"));
}
// Create PreparedStatement to get data from the 4th
// record (remember the first record is 0) and limited
// to 3 records only.
query = "select * from product limit 3, 3";
ps = connection.prepareStatement(query);
result = ps.executeQuery();
System.out.println("\nResult fetched with specified limit 3, 3");
System.out.println("====================================");
while (result.next()) {
System.out.println("id:" + result.getInt("id") +
", code:" + result.getString("code") +
", name:" + result.getString("name") +
", price:" + result.getString("price"));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
An example result of our program is:
Total number of data in database: 9
Result fetched with specified limit 5
====================================
id:1, code:P0000001, name:UML Distilled 3rd Edition, price:25.00
id:3, code:P0000003, name:PHP Programming, price:20.00
id:4, code:P0000004, name:Longman Active Study Dictionary, price:40.00
id:5, code:P0000005, name:Ruby on Rails, price:24.00
id:6, code:P0000006, name:Championship Manager, price:0.00
Result fetched with specified limit 3, 3
====================================
id:5, code:P0000005, name:Ruby on Rails, price:24.00
id:6, code:P0000006, name:Championship Manager, price:0.00
id:7, code:P0000007, name:Transport Tycoon Deluxe, price:0.00
Maven Dependencies
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>8.4.0</version>
</dependency>