bài giảng lập trình java cơ bản chương 7 gv võ hoàng phương dung truy cập cơ sở dữ liệu với jdbc - Pdf 23

L
L


P TRÌNH JAVA
P TRÌNH JAVA
Chương 7
TRUY CẬP CƠ SỞ
DỮ LIỆU VỚI JDBC
GV: Võ Hoàng Phương Dung

Giới thiệu về JDBC

Cấu trúc JDBC

Các bước sử dụng JDBC
2/25
N
N


i dung
i dung

Viết tắt của Java Database Connectivity

Là Java API chuẩn cho việc kết nối Java
application đến Database

Các chức năng
• Thiết lập kết nối đến Database

c c


a JDBC
a JDBC
2-tier 3-tier

Cấu trúc JDBC gồm 2 phần
• JDBC API
• JDBC Driver
5/25
C
C


u tr
u tr
ú
ú
c c
c c


a JDBC
a JDBC

JDBC API
• Phần lớn các API nằm trong 2 gói

java.sql

C


u tr
u tr
ú
ú
c c
c c


a JDBC
a JDBC

JDBC Driver
• Tất cả các Database server đều có JDBC driver
tương ứng
• Có 4 loại JDBC Driver

Loại 1: JDBC/ODBC

Loại 2: Native-API

Loại 3: Open Protocol-Net

Loại 4: Proprietary-Protocol-Net
8/25
C
C


10/25
C
C


u tr
u tr
ú
ú
c c
c c


a JDBC
a JDBC

JDBC driver loại 3: Net pure Java
11/25
C
C


u tr
u tr
ú
ú
c c
c c



C
C
á
á
c bư
c bư


c s
c s


d
d


ng JDBC
ng JDBC

Nạp các java package: sử dụng câu lệnh import
import java.sql.* ;

Đăng ký JDBC Driver: có 2 cách
•Sử dụng method: Class.forName(<driver name>)
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
}catch(ClassNotFoundException ex) {
System.out.println("Error");
}
14/25

com.microsoft.sqlserver.jdbc.SQL
ServerDriver
jdbc:sqlserver://
hostname:portNumber;databaseName

Ví dụ
• SQL SERVER:
“jdbc:sqlserver://myserver:1433;databasename=Lib
rary”;
• Oracle thin driver
“jdbc:oracle:thin:@machinename:1521:dbname”
17/25
Bước 1: Thiết lập kết nối Database

Tạo đối tượng kết nối Connection: sử dụng 1
trong 3 cách
• DriverManager.getConnection(String url)
• DriverManager.getConnection(String url, String
user, String password)
• DriverManager.getConnection(String url,
Properties info)
• Chú ý: ném ra ngoại lệ SQLException
18/25
Bước 1: Thiết lập kết nối Database
• Ví dụ 1
Connection conn =DriverManager.getConnection(url);
• Ví dụ 2
Connection conn
=DriverManager.getConnection(url,"sa","123456");
• Ví dụ 3


Biến OUT: lấy giá trị bằng pt getXXX(index)

Biến INOUT: truyền giá trị bằng setXXX(index, value), lấy giá trị
bằng getXXX(index)

Ví dụ
CallableStatement cstmt = null;
try {
String SQL = "{call getEmpName (?, ?)}";
cstmt = conn.prepareCall(SQL);
} catch (SQLException e) {}
21/25
Bước 2: Tạo câu lệnh truy vấn

Sử dụng 1 trong 3 phương thức
• boolean execute(String SQL): trả lại true nếu kết
quả trả về của câu lệnh truy vấn là ResultSet
• int executeUpdate(String SQL): trả lại số row bị
ảnh hưởng, sử dụng cho Insert, Update, Delete
• ResultSet executeQuery(String SQL): trả lại 1 đối
tượng ResultSet, sử dụng cho Select
Ví dụ
ResultSet rs = statement.executeQuery(“select * from
tblEmployer”);
int n=statement.executeUpdate(“update tblEmployer set
age=’40’ where id=‘1’ ”);
22/25
Bước 3: Thực thi câu truy vấn


• ResultSet.CONCUR_UPDATABLE: ResultSet có
thể thay đổi được dữ liệu
25/25
Bước 4: Xử lý kết quả trả về


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status