Chương này cung cấp cho bạn ví dụ minh họa về sử dụng mệnh đề LIKE bởi sử dụng ứng dụng JDBC. Bạn theo 6 bước đã được đề cập trong chương Tạo ứng dụng JDBC cơ bản.
Phần ví dụ sẽ được trình bày tuần tự theo các bước và sẽ được comment chi tiết cho bạn dễ theo dõi.
Ví dụ mệnh đề LIKE trong JDBC
package com.hoctv.jdbc; //Buoc 1: Ban can inport cac package can thiet import java.sql.*; public class ViDuJDBC { // Ten cua driver va dia chi URL cua co so du lieu static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost/sinhvien"; // Ten nguoi dung va mat khau cua co so du lieu static final String USER = "root"; static final String PASS = "123456"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try{ // Buoc 2: Dang ky Driver Class.forName("com.mysql.jdbc.Driver"); // Buoc 3: Mo mot ket noi System.out.println("\nKet noi toi co so du lieu da chon ..."); conn = DriverManager.getConnection(DB_URL, USER, PASS); System.out.println("\nKet noi thanh cong ..."); // Buoc 4: Thuc thi truy van System.out.println("Tao cac lenh truy van SQL ..."); stmt = conn.createStatement(); // Dau tien, lay cac ban ghi ma khong kem theo dieu kien nao. System.out.println("\nLay cac ban ghi ma khong kem theo dieu kien nao ..."); String sql = "SELECT mssv, ho, ten, diemthi FROM sinhvienk60"; ResultSet rs = stmt.executeQuery(sql); while(rs.next()){ // Lay du lieu boi su dung ten cot int mssv = rs.getInt("mssv"); int diemthi = rs.getInt("diemthi"); String ho = rs.getString("ho"); String ten = rs.getString("ten"); // Hien thi cac gia tri System.out.print("\nMSSV: " + mssv); System.out.print("\nHo: " + ho); System.out.println("\nTen: " + ten); System.out.print("\nDiem Thi: " + diemthi); System.out.print("\n================="); } // Lay ban ghi ma trong ho bat dau voi Dinh System.out.println("\nLay ban ghi kem theo dieu kien ..."); sql = "SELECT mssv, ho, ten, diemthi FROM sinhvienk60" + " WHERE ho LIKE 'Dinh%' "; rs = stmt.executeQuery(sql); while(rs.next()){ // Lay du lieu boi su dung ten cot int mssv = rs.getInt("mssv"); int diemthi = rs.getInt("diemthi"); String ho = rs.getString("ho"); String ten = rs.getString("ten"); // Hien thi cac gia tri System.out.print("\nMSSV: " + mssv); System.out.print("\nHo: " + ho); System.out.println("\nTen: " + ten); System.out.print("\nDiem Thi: " + diemthi); System.out.print("\n================="); } rs.close(); }catch(SQLException se){ // Xu ly cac loi cho JDBC se.printStackTrace(); }catch(Exception e){ // Xu ly cac loi cho Class.forName e.printStackTrace(); }finally{ // Khoi finally duoc su dung de dong cac resource try{ if(stmt!=null) conn.close(); }catch(SQLException se){ }// do nothing try{ if(conn!=null) conn.close(); }catch(SQLException se){ se.printStackTrace(); }// Ket thuc khoi finally }// Ket thuc khoi try }// Ket thuc main }// Ket thuc ViDuJDBC
Sao chép và dán ví dụ trên trong ViDuJDBC.java, sau đó biên dịch và chạy chương trình Java trên sẽ cho kết quả: