Bài giảng Lập trình ứng dụng quản lý 1 - Chương 3: Lập trình kết nối cơ sở dữ liệu ADO.NET - Phạm Hoàng Hải
Khoa CNTT
CNPM
LẬP TRÌNH KẾT NỐI CSDL
ADO.NET
LTUDQL - 1
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
1. NỘI DUNG
¨ Tổng quan về ADO.Net
¨ Mô hình kết nối
¨ Mô hình phi kết nối
LTUDQL - 2
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
¨ Các thế hệ của lập trình kết nối CSDL
LTUDQL - 3
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
MỤC TIÊU BÀI HỌC
¨ Tìm hiểu về ADO.Net
¨ Các mô hình kết nối CSDL
(Connected & Disconnected)
¨ Dùng VS.Net (VB.Net) xây dựng ứng
dụng kết nối CSDL ADO.Net
ADO.NET
LTUDQL - 4
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
GIỚI THIỆU
¨ ADO.NET là một tập các lớp thư viện
được sử dụng để truy xuất dữ liệu
Thêm/xóa/sửa dữ liệu
Đọc dữ liệu
Chương trình
CSDL, XML…
¨ Nằm trong bộ thư viện các lớp cơ sở
của .Net Framework
LTUDQL - 5
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
VỊ TRÍ CỦA ADO.NET
¨ ADO.NET là thành phần nội tại của
.Net Framework à có thể sử dụng
trong các ngôn ngữ hỗ trợ .Net (C#,
VB.Net, ...)
ASP.NET
Windows Forms
Class Framework
Drawing XML
Data
ADO.NET
Comman language Runtime
System Services
¨ Các lớp ADO.Net đặt trong
System.Data
¨ Chức năng và cách sử dụng hoàn
toàn giống nhau.
LTUDQL - 6
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
ADO vs ADO.Net
QL - 7
Th.S Phạ
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
ADO vs ADO.Net
¨ ADO kết nối CSDL tốt, nhưng
• Đòi hỏi kết nối chuẩn COM và
Windows
• Xử lý kết nối CSDL qua Internet khó
khăn và không tốt.
¨ ADO.Net
• Tích hợp chặt chẽ với XML
• Làm việc tốt trên môi trường Internet.
¨ ADO.Net là sự cải tiến của ADO
• Khác biệt nhau ở mô hình (COM vs
XML)
• Giống nhau về các chức năng.
LTUDQL - 8
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
ADO vs ADO.Net
Thuận lợi/khó
khăn kết nối
Khác biệt
về mô hình
Internet
LTUDQL - 9
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
.Net DATA PROVIDER
¨ .NET Data Provider
• Dùng để kết nối đến CSDL, thực hiện
các câu lệnh, và nhận kết quả trả về.
• Hiện có 3 loại data provider chính
.NET Data Provider
ODBC
RDBMS
Connection
Command
OLE DB
RDBMS
Data Reader
SQL
Server
Data Adapter
L - 10
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
CÁC LỚP ĐỐI TƯỢNG TRONG
ADO.NET
¨ .NET Data Provider
• Các thành phần của .NET Data
Provider
LTUDQL - 11
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
2. TỔNG QUAN VỀ ADO.NET
CÁC LỚP ĐỐI TƯỢNG TRONG
ADO.NET
¨ Connection: Là đối tượng có nhiệm vụ
thực hiện nhiệm vụ kết nối đến CSDL
¨ Command: Dùng để thực hiện các
câu lệnh SQL thao tác với CSDL như:
Insert, Update, Select, Delete
¨ DataReader: Dùng để đón nhận kết
quả trả về từ đối tượng Command
¨ DataAdapter: Có chức năng như một
cầu nối giữa nguồn (tệp) dữ liệu và
các bảng được cached trong bộ nhớ
LTUDQL - 12
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
3. MÔ HÌNH KẾT NỐI - PHI KẾT
NỐI
¨ Mô hình kết nối (Connected Model)
Chương trình
¨ Mô hình phi kết nối (Disconnected
Model)
Chương trình
LTUDQL - 13
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
3. MÔ HÌNH KẾT NỐI
CONNECTED MODEL
¨ Kết nối vào CSDL
¨ Thực hiện lệnh
• Thêm/Xóa/Sửa dữ liệu
• Đọc dữ liệu từ CSDL
Command
Connection
Chương trình
DataReader
LTUDQL - 14
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
VÍ DỤ
¨ Xây dựng ứng dụng QLHS
• Yêu cầu : Tiếp nhận học sinh
LTUDQL - 15
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
3. MÔ HÌNH KẾT NỐI
CONNECTED MODEL
CONNECTION
¨ Connection: Kết nối vào CSDL
• Các lớp phụ trách kết nối
vODBCConnection
vOleDBConnection
vSqlConnection
vOracleConnection
• Thuộc tính quan trọng
vConnectionString: xác định nguồn
dữ liệu cần kết nối
• Phương thức quan trọng
vOpen: mở kết nối
vClose: đóng kết nối
LTUDQL - 16
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
3. MÔ HÌNH KẾT NỐI
CONNECTED MODEL
CONNECTION
¨ Kết nối vào CSDL
• Ví dụ: kết nối vào Access
OleDbConnection cnn = new OleDbConnection();
cnn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;
Data Source=hocsinh.mdb“;
cnn.Open();
//Các lệnh cần thực hiện
LTUDQL - 17
Th.S Phạm Hoàng Hải
Khoa CNTT -
10/17/17
Khoa CNTT
CNPM
3. MÔ HÌNH KẾT NỐI
CONNECTED MODEL
CONNECTION
¨ Kiểm tra kết nối: Sau khi gọi phương
thức Open, có thể xem đã kết nối
thành công hay không thông qua
thuộc tính State của Connection.
• Ví dụ:
if (con.State.ToString() = "Open" )
LTUDQL - 18
Th.S Phạm Hoàng Hải
18
Khoa CNTT
CNPM
3. MÔ HÌNH KẾT NỐI
CONNECTED MODEL
CONNECTION
¨ Đóng kết nối: Thi hành phương thức
Close() để đóng kết nối
¨ Để tránh lỗi ta nên kiểm tra trạng thái
kết nối
• Ví dụ:
If (con.State.ToString() == "Open")
con.Close();
LTUDQL - 19
Th.S Phạm Hoàng Hải
Khoa CNTT
CNPM
3. MÔ HÌNH KẾT NỐI
CONNECTED MODEL
COMMAND
¨ Command: Thực hiện lệnh
• Các lớp phụ trách
vODBCCommand
vOleDBCommand
vSqlCommand
vOracleCommand
• Thuộc tính quan trọng
vConnection: xác định CSDL sẽ thực hiện
thao tác
vCommandText: xác định thao tác cần thực
hiện
vParameters: xác định các tham số lệnh
• Phương thức quan trọng
vExecuteReader: phù hợp lệnh Select trả ra
1 bảng dữ liệu
vExecuteScalar: phù hợp lệnh Select trả ra 1
giá trị
vExecuteNonQuery: phù hợp lệnh Insert,
Delete, Update
LTUDQL - 20
Th.S Phạm Hoàng Hải
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Lập trình ứng dụng quản lý 1 - Chương 3: Lập trình kết nối cơ sở dữ liệu ADO.NET - Phạm Hoàng Hải", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_lap_trinh_ung_dung_quan_ly_1_chuong_3_lap_trinh_ke.pdf

