ADO.Net ActiveX Data Object: là một tập các lớp nằm trong bộ thư viện lớp cơ sở của .NET Framework cung cấp khả năng làm việc với dữ liệu được lưu trữ trong bộ nhớ như một CSDL thu nh
Trang 1• GVHD: Dương Khai Phong
• Email: khaiphong@gmail.com
• Website: http://sites.google.com/site/khaiphong
Lý thuyết: 45 tiết
Thực hành: 30 tiết
Trang 21/ Giới thiệu tổng quan Web
2/ HTML và JavaScript
3/ Các đối tượng trong ASP.Net
4/ ADO.Net (kết nối cơ sở dữ liệu)
5/ Triển khai ứng dụng Web + Ôn tập
Trang 3PHẦN 4:
Trang 41 Giới thiệu
2 Kiến trúc ADO.Net
3 Cơ bản kết nối database trong ASP.Net
4 Các đối tượng liên quan đến database
5 Các control trình bày dữ liệu (data control)
Trang 5 ADO.Net (ActiveX Data Object): là một tập các
lớp nằm trong bộ thư viện lớp cơ sở của NET
Framework cung cấp khả năng làm việc với dữ liệu được lưu trữ trong bộ nhớ như một CSDL thu nhỏ gọi là “ dataset ” làm tăng tốc độ tính toán, xử lý tính
toán và hạn chế sử dụng tài nguyên trên Database Server
ADO.Net cung cấp khả năng xử lý dữ liệu chuẩn
XML (dữ liệu dạng XML có thể trao đổi giữa bất kỳ
hệ thống nào ứng dụng có nhiều khả năng làm việc với những ứng dụng khác)
Trang 6Tầng chứa các đối tượng làm việc trực tiếp với các hệ quản trị CSDL bên dưới
Tầng chứa các đối tượng như bản sao thu nhỏ của CSDL
Các hệ QT CSDL:
• Access
• SQL
• Oracle,
Trang 7 Các bước cơ bản thực hiện với CSDL:
Bước 1: Tạo kết nối
Bước 2: Tạo điều khiển truy vấn SQL
Bước 3: Mở kết nối dữ liệu
Bước 4: Thực thi truy vấn SQL
Bước 5: Đóng kết nối
Bước 6: In kết quả
Trang 8 Ví dụ cơ bản thực hiện kết nối với CSDL Access:
Yêu cầu:
Tạo một CSDL Access 2003: database.mdb
Tạo project website gồm:
Thiết kế
Dữ liệu
CSDL Access vào đúng thư mục chứa Project
Trang 9 Ví dụ cơ bản thực hiện kết nối với CSDL Access:
Label (ID: data_src): Hiển thị đường dẫn tới Database.mdb
Label (ID: con_open): hiển thị thông báo kết
Trang 10 Ví dụ cơ bản thực hiện kết nối với CSDL Access:
Viết code cho sự kiện Page_Load trong trang default.aspx.cs:
Bước 1: Tạo kết nối CSDL
string strConnection = "Provider=Microsoft.Jet.OleDb.4.0;";
strConnection += @"Data Source=" + MapPath("Database.mdb");
data_src.Text = strConnection;
string strResultsHolder = "";
OleDbConnection objConnection = new OleDbConnection (strConnection);
Bước 2: Tạo điều khiển truy vấn SQL
string strSQL = "SELECT MaKH,Hoten FROM Khachhang";
OleDbCommand objCommand = new OleDbCommand (strSQL, objConnection);
OleDbDataReader objDataReader = null;
Lưu ý: cần sử dụng thư viện: System.Data.OleDb;
Trang 11 Ví dụ cơ bản thực hiện kết nối với CSDL Access:
Viết code cho sự kiện Page_Load trong trang default.aspx.cs:
Bước 3+4+5+6:
try {
// Bước 3: Mở kết nối dữ liệu
objConnection.Open();
con_open.Text = "Connection opened successfully.<br>";
// Bước 4: Thực thi truy vấn SQL
objDataReader = objCommand.ExecuteReader();
while (objDataReader.Read() == true) { // Đọc dữ liệu trong CSDL
strResultsHolder += objDataReader["MaKH"]+ " ";;
catch (Exception ex) {
con_open.Text = "Connection failed to open successfully.<br/>";
con_close.Text = e.ToString();
}
Trang 12 Ví dụ cơ bản thực hiện kết nối với CSDL SQL:
Yêu cầu:
Tạo một CSDL SQL 2008: database.mdf
Bước 1: RClick App_Data
Bước 2: chọn Add New Item
Trang 13 Ví dụ cơ bản thực hiện kết nối với CSDL SQL:
Yêu cầu:
Tạo một CSDL SQL 2008: database.mdf
Bước 1: RClick App_Data
Bước 2: chọn Add New Item
Bước 3: Tạo quan hệ cho
CSDL: DClick tên CSDL
Trang 14 Ví dụ cơ bản thực hiện kết nối với CSDL SQL:
Yêu cầu:
Tạo một CSDL SQL 2008: database.mdf
Bước 1: RClick App_Data
Bước 2: chọn Add New Item
Bước 3: Tạo quan hệ cho
CSDL: DClick tên CSDL
Thiết kế
Trang 15 Ví dụ cơ bản thực hiện kết nối với CSDL SQL:
Viết code cho sự kiện Page_Load trong trang default.aspx.cs:
Trang 16 Các bước cơ bản thực hiện với CSDL:
Bước 1: Tạo kết nối
Bước 2: Tạo điều khiển truy vấn SQL
Bước 3: Mở kết nối dữ liệu
Bước 4: Thực thi truy vấn SQL
Trang 17a) Đối tượng kết nối CSDL Connection:
Trang 18a) Đối tượng kết nối CSDL Connection:
SqlConnection
Thuộc tính
State Trạng thái kết nối đến CSDL
Database Chứa đựng tên CSDL
Server Tên máy chứa CSDL
Trang 19b) Đối tượng điều khiển thực thi truy vấn SQL:
Connection Gắn driver (chuỗi kết nối) kết nối đến CSDL
CommandType Xác định kiểu thực thi truy vấn (câu lệnh,
procedure, )
CommandText Câu lệnh truy vấn
Trang 20b) Đối tượng điều khiển thực thi truy vấn SQL:
SqlCommand
Phương thức
ExecuteReader() Phương thức dùng chỉ đọc CSDL
ExecuteNonQuery() Dùng thực thi các T-SQL: Insert, Update, Delete, …
ExecuteScalar Thực thi truy vấn mà kết quả trả về chỉ có 1 dòng 1
cột
Trang 21c) Đối tượng xử lý dữ liệu từ truy vấn SQL:
Đối tượng DataRead nhận dữ liệu chỉ đọc từ CSDL bên
dưới thông qua các đối tượng điều khiển thực thi truy vấn SQL như SqlCommand
Ví dụ:
SqlDataReader sqlreader;
sqlreader = sqlcom.ExecuteReader();
Đối tượng DataAdapter được xem như bộ đọc dữ liệu
từ CSDL nguồn và điền chúng vào các đối tượng như DataSet, DataTable
Trang 22c) Đối tượng xử lý dữ liệu từ truy vấn SQL:
Fill( <Tên_đốitượng> ) Thực thi câu lệnh select trong sql rồi điền kết quả cho
DataSet hoặc Datatable
Update() Câp nhật các thay đổi vào dữ liệu lên các dữ liệu nguồn
Dispose() Giải phóng đối tượng
Trang 23d) Đối tượng DataSet và DataTable:
Chức năng :
Là đối tượng được dùng để chứa dữ liệu của mọi cơ sở
dữ liệu và cho phép thay đổi dữ liệu bên trong đối tượng này để sau đó cập nhật trở lại cơ sở dữ liệu nguồn bằng
phương thức Update của đối tượng DataAdapter
Thuộc tính và phương thức : (xem ví dụ)
Trang 24Trình bày dữ liệu dạng
khung lưới
Trình bày dữ liệu dạng bảng, có phân trang
Trình bày dữ liệu thành từng
chương mục
Tìm hiểu các control này thông qua các ví dụ minh hoạ cụ thể