You are on page 1of 8

KẾT NỐI CƠ SỞ DỮ LIỆU JAVA VỚI MYSQL

1/. Giới thiệu:


Trong Java, chúng ta có thể kết nối ứng dụng Java của mình với cơ sở dữ liệu MySQL thông qua mã
lệnh Java. JDBC (Kết nối cơ sở dữ liệu Java) là một trong những API tiêu chuẩn để kết nối cơ sở dữ
liệu, sử dụng nó, chúng ta có thể dễ dàng chạy truy vấn, câu lệnh hể tìm nạp dữ liệu từ cơ sở dữ liệu.

2/. Điều kiện để kết nối cơ sở dữ liệu Java với MySQL: gồm các bước sau:
A. Cài đặt XAMPP để quản trị MySQL
B. Download MySQL Connector
C. Đặt file mysql-connector-j-8.3.0.jar vào thư mục lib của Project chương trình và RC chọn
Build Path\ Add to Build Path,…
D. Khởi động XAMPP, Tạo CSDL, tạo bảng, nhập dữ liệu trong MySQL
E. Viết chương trình kết nối với MySQL

A/. Cài đặt XAMPP để quản trị MySQL:


 Truy cập trang: https://www.apachefriends.org/download.html
 Chọn phiên bản để download và cài đặt, …

B/. Download MySQL Connector:


 Truy cập trang: https://dev.mysql.com/downloads/connector/j/?os=26
 Download được file mysql-connector-j-8.3.0.zip, giải nén ra và chọn file mysql-connector-j-
8.3.0.jar

C/. Đặt file mysql-connector-j-8.3.0.jar vào thư mục lib của Project chương trình và RC chọn Build
Path\ Add to Build Path, kết quả phát sinh Referenced Libraries (như hình)
D/. Khởi động XAMPP, Tạo CSDL, tạo bảng, nhập dữ liệu trong MySQL:

 Click chạy Apache, MySQL.


 Click Admin để tạo CSDL, bảng, nhập dữ liệu bằng lệnh SQL,…

E/. Viết chương trình kết nối với MySQL (Sinh viên nghe giải thích và ghi chép)

Ví dụ 1: Kết nối với mySQL theo kiểu cũ.


import java.sql.*;
//Chương trình kiểu cũ, không dùng vì tốc độ chậm và sẽ không còn hỗ trợ nữa
public class TestDB
{
public static void main(String args[])
{
try{
Class.forName("com.mysql.jdbc.Driver");
Connection
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/testjava","root","
");
//username là "root" và password là ""
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select * from students");
while(rs.next())
System.out.println(rs.getInt(1)+" "+rs.getString(2)+"
"+rs.getString(3));
conn.close();
}
catch(Exception e)
{ System.out.println(e);}
}
}

Kết quả:

Ví dụ 2: Kết nối với mySQL nên dùng. (chú ý lệnh kết nối)
import java.sql.*; //nhớ import
public class TestMySQL
{
public static void main(String arg[])
{
ketnoi();
}
public static void ketnoi() // pthức kết nối csdl và truy vấn dữ liệu
{ Connection connection = null;
try
{
Class.forName("com.mysql.cj.jdbc.Driver");
connection =
DriverManager.getConnection("jdbc:mysql://localhost:3306/testjava","root", "");
// testjava là tên database, user name là "root", password là ""
Statement statement; // khai báo, khởi tạo lệnh
statement = connection.createStatement();
ResultSet resultSet; // khai báo và tạo kết quả từ lệnh
resultSet = statement.executeQuery("select * from students");
int id;
String name, email;
while (resultSet.next())
// trả về true/false cho biết còn dòng trong tập kết quả?
{
id = resultSet.getInt("id");
name = resultSet.getString("Name").trim();
email = resultSet.getString("Email");
System.out.println("Mã số: " + id
+ " ,Họ tên : " + name + " ,Email: " +
email);
}
resultSet.close(); //đóng resultSet
statement.close(); //đóng lệnh
connection.close(); //đóng kết nối
}
catch (Exception exception) {
System.out.println(exception);
}
}
}

3/. Thêm xóa sửa dữ liệu:


Khai báo các biến: cần các biến sau:
static Connection conn = null; //dùng kết nối
static Statement stmt = null; //tạo lệnh truy vấn sql
static ResultSet resultSet = null; //tập chứa kết quả từ truy vấn

Hiển thị dữ liệu từ table: phương thức showData()


o Kết nối database
o Tạo lệnh: stmt = conn.createStatement();
o Tạo tập kết quả: ResultSet resultSet;
o Viết lệnh SQL: String sql ="select * from students";
o Thi hành lệnh SQL và đưa vào tập kết quả:
resultSet = stmt.executeQuery(sql);

o …

Thêm 1 dòng dữ liệu: phương thức insertData()


o Kết nối database
o Tạo lệnh: stmt = conn.createStatement();
o Viết lệnh SQL: String sql = "insert into students values (" + soid +
",'" + name + "'," + "'" + email + "');";
o Thi hành lệnh SQL: int i = stmt.executeUpdate(sql);
Biến i chứa số nguyên là kết quả thêm.
o …
Xóa dữ liệu: phương thức deleteData()
o Kết nối database
o Tạo lệnh: stmt = conn.createStatement();
o Viết lệnh SQL: String sql = "delete from students where (id =" + id
+ ");";
o Thi hành lệnh SQL: int i = stmt.executeUpdate(sql);
o …

Sửa dữ liệu: phương thức updateData()


o Kết nối database
o Tạo lệnh: stmt = conn.createStatement();
o Viết lệnh SQL: String query = "update students set Name='" + name +
"', Email ='" + email + "' where (id = " + id + ");";
o
o Thi hành lệnh SQL: int i = stmt.executeUpdate(query);
o …

You might also like