YOMEDIA

ADSENSE
JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING
99
lượt xem 8
download
lượt xem 8
download

JDBC API là tập các Java API được sử dụng để tương tác với cơ sở dữ liệu quan hệ. ● Công dụng ● Kết nối cơ sở dữ liệu quan hệ. ● Gửi các câu truy vấn đến cơ sở dữ liệu. ● Nhận và xử lý các kết quả trả về từ cơ sở dữ liệu
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING JDBC Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 1
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Nội dung trình bày ● JDBC API ● Kiến trúc JDBC ● Thiết lập kết nối đến cơ sở dữ liệu ● Statement ● PreparedStatement ● CallableStatement Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 2
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING JDBC API ● JDBC API là tập các Java API được sử dụng để tương tác với cơ sở dữ liệu quan hệ. ● Công dụng ● Kết nối cơ sở dữ liệu quan hệ. ● Gửi các câu truy vấn đến cơ sở dữ liệu. ● Nhận và xử lý các kết quả trả về từ cơ sở dữ liệu Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 3
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Kiến trúc JDBC Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 4
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Kiến trúc JDBC ● Khi làm việc với JDBD, java developer sẽ làm việc như nhau đối với các hệ cơ sở dữ liệu khác nhau. ● Java developer không phụ thuộc vào một hệ cơ sở dữ liệu cụ thể nào. ● Java developer không cần phải quan tâm đến sự khác nhau khi giao tiếp với các hệ quản trị cơ sở dữ liệu quan hệ khác nhau. Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 5
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Thiết lập kết nối đến cơ sở dữ liệu ● Bước 1: Thêm thư viện JDBC Driver vào ứng dụng ● Bước 2: Đăng ký Driver - MySQL Cách 1: Class.forName : Class.forName(“org.gjt.mm.mysql.Driver”); Cách 2: DriverManager.registerDriver Driver driver = new org.gjt.mm.mysql.Driver() DriverManager.registerDriver(driver); Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 6
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Thiết lập kết nối đến cơ sở dữ liệu ● MySQL → Database: bookonline → user: root , password: 123456 → port: 3306 (default) → server: localhost ● Java → url: jdbc:mysql://localhost:3306/bookonline → user: root , password: 123456 → characterEncoding: utf-8 Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 7
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Thiết lập kết nối đến cơ sở dữ liệu 1 import java.sql.*; 2 import java.util.*; 1 Driver driver = new org.gjt.mm.mysql.Driver(); 2 DriverManager.registerDriver(driver); 3 String 4 conString="jdbc:mysql://localhost:3306/BookOnline"; 5 Properties info = new Properties(); 6 info.setProperty("characterEncoding", "utf8"); 7 info.setProperty("user", "root"); 8 info.setProperty("password", "root"); 9 Connection connection = 10 DriverManager.getConnection(conString, info); 11 . . . 12 connection.close(); Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 8
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Thiết lập kết nối đến cơ sở dữ liệu ● Sau khi thiết lập kết nối đến cơ sở dữ liệu, có thể ● Gửi các câu truy vấn đến cơ sở dữ liệu. ● Nhận và xử lý các kết quả trả về từ cơ sở dữ liệu. Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 9
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Các dạng Statement ● Statement: Thực hiện các câu truy vấn đơn giản. ● PreparedStatement: Thực hiện các câu truy vấn có các tham số đầu vào ● CallableStatement: Thực hiện các câu truy vấn có các tham só đầu vào và đầu ra. Cụ thể là các store procedure Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 10
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 11
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement ● Statement: Thực hiện các câu truy vấn đơn giản. Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 12
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement ● Cách tạo Statement đơn giản Statement sm = con.createStatement(); ● Các phương thức thường dùng sm.executeQuery(sql); → select sm.executeUpdate(sql); → insert, update, delete, drop, create, … sm.addBatch(sql) & sm.executeBatch() → Batch Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 13
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement - executeQuery ● ResultSet rs = sm.executeQuery(sql); ● ResultSet → forward : rs.next() 1 Statement statement = con.createStatement(); 2 String sql = “SELECT * FROM DanhMuc”; 3 ResultSet rs = statement.executeQuery(sql); 4 while (rs.next()){ 5 int maDanhMuc = rs.getInt(“MaDanhMuc”); 6 String tenDanhMuc = rs.getString(“tenDanhMuc”); 7 System.out.println(maDanhMuc+” “+tenDanhMuc); 8 } 9 rs.close(); 10 sm.close(); 11 con.close(); Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 14
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement - executeQuery ● Forward & Backward Statement sm= connection.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); ● ResultSet rs = sm.executeQuery(sql); ● ResultSet rs → forward : rs.next(); → backward: rs.previous(); Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 15
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement – executeUpdate 1 Statement sm = con.createStatement(); 2 String sql = “DELETE FROM Sach WHERE MaDanhMuc= 1”; 3 int n = sm.executeUpdate (sql); 4 if (n >= 0){ 5 System.out.println(n + “ Sách đã được xóa”); 6 }else{ 7 System.out.println(“Lỗi”); 8 } 9 sm.close(); 10 con.close(); Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 16
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement – executeUpdate 1 Statement sm = con.createStatement(); 2 String sql = String.format(“UPDATE DanhMuc 3 SET TenDanhMuc = '%s'” 4 WHERE MaDanhMuc= %d”, 5 maDanhMuc, tenDanhMuc); 6 7 int n = sm.executeUpdate (sql); 8 if (n >= 0){ 9 System.out.println(“Cập nhật thành công”); 10 }else{ 11 System.out.println(“Lỗi”); 12 } 13 sm.close(); 14 con.close(); Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 17
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement – executeUpdate 1 Statement sm = con.createStatement(); 2 String sql = String.format(“INSERT INTO DanhMuc 3 (TenDanhMuc) VALUES('%s')”,tenDanhMuc); 4 int n = sm.executeUpdate (sql); 5 if (n >= 0){ 6 System.out.println(“Thêm thành công”); 7 }else{ 8 System.out.println(“Lỗi”); 9 } 10 sm.close(); 11 con.close(); Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 18
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement – executeUpdate 1 String tenDanhMuc = "C++"; 2 String sql= String.format("INSERT INTO 3 DANHMUC(TENDANHMUC) VALUES '%s')", tenDanhMuc); 4 int n=sm.executeUpdate(sql, 5 Statement.RETURN_GENERATED_KEYS); 6 if(n>0){ 7 System.out.println("Thêm thành công"); 8 ResultSet rs=statement.getGeneratedKeys(); 9 if(rs.next()){ 10 int mdm = rs.getInt(1); 11 System.out.println("Mã danh mục vừa thêm:" +mdm); 12 } 13 } 14 sm.close(); 15 con.close(); Nguyễn Hoàng Anh - nhanh@fit.hcmus.edu.vn - ĐHKHTN 19
- JAVA PROGRAMMING – 2012 - V2.1 JAVA PROGRAMMING Statement – executeUpdate 1 String [] tenDanhMucs = {"C++", "C#", "Java"}; 2 String sql="INSERT INTO DANHMUC(TENDANHMUC) VALUES "; 3 for(int i=0; i

ADSENSE
CÓ THỂ BẠN MUỐN DOWNLOAD
Thêm tài liệu vào bộ sưu tập có sẵn:

Báo xấu

LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn
