JDBC - Esempio di clausola simile
Questo capitolo fornisce un esempio su come selezionare i record da una tabella utilizzando l'applicazione JDBC. Ciò aggiungerebbe condizioni aggiuntive utilizzando la clausola LIKE durante la selezione dei record dalla tabella. Prima di eseguire il seguente esempio, assicurati di avere a disposizione quanto segue:
Per eseguire il seguente esempio è possibile sostituire il nome utente e la password con il nome utente e la password effettivi.
Il tuo MySQL o qualunque database tu stia utilizzando, è attivo e funzionante.
Passaggi obbligatori
I seguenti passaggi sono necessari per creare un nuovo database utilizzando l'applicazione JDBC:
Import the packages:Richiede di includere i pacchetti contenenti le classi JDBC necessarie per la programmazione del database. Molto spesso, sarà sufficiente utilizzare import java.sql. * .
Register the JDBC driver: Richiede l'inizializzazione di un driver in modo da poter aprire un canale di comunicazione con il database.
Open a connection:Richiede l'utilizzo del metodo DriverManager.getConnection () per creare un oggetto Connection, che rappresenta una connessione fisica con un server di database.
Execute a query:Richiede l'utilizzo di un oggetto di tipo Statement per la creazione e l'invio di un'istruzione SQL per recuperare i record da una tabella che soddisfano una determinata condizione. Questa query utilizzaLIKE clausola per selezionare i record per selezionare tutti gli studenti il cui nome inizia con "za".
Clean up the environment: Richiede la chiusura esplicita di tutte le risorse del database anziché fare affidamento sulla garbage collection della JVM.
Codice d'esempio
Copia e incolla il seguente esempio in JDBCExample.java, compila ed esegui come segue:
//STEP 1. Import required packages
import java.sql.*;
public class JDBCExample {
// JDBC driver name and database URL
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost/STUDENTS";
// Database credentials
static final String USER = "username";
static final String PASS = "password";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
//STEP 2: Register JDBC driver
Class.forName("com.mysql.jdbc.Driver");
//STEP 3: Open a connection
System.out.println("Connecting to a selected database...");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected database successfully...");
//STEP 4: Execute a query
System.out.println("Creating statement...");
stmt = conn.createStatement();
// Extract records without any condition.
System.out.println("Fetching records without condition...");
String sql = "SELECT id, first, last, age FROM Registration";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next()){
//Retrieve by column name
int id = rs.getInt("id");
int age = rs.getInt("age");
String first = rs.getString("first");
String last = rs.getString("last");
//Display values
System.out.print("ID: " + id);
System.out.print(", Age: " + age);
System.out.print(", First: " + first);
System.out.println(", Last: " + last);
}
// Select all records having ID equal or greater than 101
System.out.println("Fetching records with condition...");
sql = "SELECT id, first, last, age FROM Registration" +
" WHERE first LIKE '%za%' ";
rs = stmt.executeQuery(sql);
while(rs.next()){
//Retrieve by column name
int id = rs.getInt("id");
int age = rs.getInt("age");
String first = rs.getString("first");
String last = rs.getString("last");
//Display values
System.out.print("ID: " + id);
System.out.print(", Age: " + age);
System.out.print(", First: " + first);
System.out.println(", Last: " + last);
}
rs.close();
}catch(SQLException se){
//Handle errors for JDBC
se.printStackTrace();
}catch(Exception e){
//Handle errors for Class.forName
e.printStackTrace();
}finally{
//finally block used to close resources
try{
if(stmt!=null)
conn.close();
}catch(SQLException se){
}// do nothing
try{
if(conn!=null)
conn.close();
}catch(SQLException se){
se.printStackTrace();
}//end finally try
}//end try
System.out.println("Goodbye!");
}//end main
}//end JDBCExample
Ora, compiliamo l'esempio sopra come segue:
C:\>javac JDBCExample.java
C:\>
Quando corri JDBCExample, produce il seguente risultato:
C:\>java JDBCExample
Connecting to a selected database...
Connected database successfully...
Creating statement...
Fetching records without condition...
ID: 100, Age: 30, First: Zara, Last: Ali
ID: 102, Age: 30, First: Zaid, Last: Khan
ID: 103, Age: 28, First: Sumit, Last: Mittal
Fetching records with condition...
ID: 100, Age: 30, First: Zara, Last: Ali
ID: 102, Age: 30, First: Zaid, Last: Khan
Goodbye!
C:\>