Tải bản đầy đủ (.pdf) (25 trang)

bài 5 ado.net và kiến trúc không kết nối (tiếp bài 4) (1)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.22 MB, 25 trang )

Bài 5:
ADO.NET & KIẾN TRÚC KHÔNG KẾT NỐI (tiếp)
Điều khiển DataGridView,Combobox
Căn bản về ADO.NET
Cơ bản về kiến trúc không kết nối
Ứng dụng nhiều form
Ứng dụng SDI
Ứng dụng MDI
Thêm Toolbar, Tooltip vào form
Hệ thống bài cũ
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
Căn bản về ADO.NET
Cơ bản về kiến trúc không kết nối
Ứng dụng nhiều form
Ứng dụng SDI
Ứng dụng MDI
Thêm Toolbar, Tooltip vào form
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
2
ADO.NET hoạt động theo cả hai kiến trúc kết nối và
không kết nối
Hoạt động của các thành phần ADO.NET
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
3
ADO.NET hoạt động theo cả hai kiến trúc kết nối và
không kết nối
Mô hình kiến trúc ADO.NET
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
4
Data Adapter
.Là cầu nối giữa CSDL và Dataset nó lấy


dữ liệu từ CSDL đưa vào Dataset và cập
nhật dữ liệu ngược lại từ DataSet vào
CSDL
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
5
Các phương thức Data Adapter
Các phương thức
Ví dụ:
Phương thức Mô tả
Fill Phương thức này sử dụng một dataset để làm tươi các
hàng trong dataset để khớp với dữ liệu trong CSDL và tạo
ra một DataTable
Update Phương thức này gọi các câu lệnh: Insert, update, delete
từ một Datatable
Các phương thức
Ví dụ:
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
6
Phương thức này gọi các câu lệnh: Insert, update, delete
từ một Datatable
Cấu trúc của DataSet giống hệt cấu trúc của cơ sở dữ liệu
Mỗi dataset gồm nhiều bảng
Các bảng có ràng buộc với nhau
Mỗi bảng có nhiều dòng và cột
Mỗi cột có nhiều dòng
Mỗi dòng có nhiều cột
Kết hợp với SqlDataAdapter để cập thao tác với dữ liệu
Kiến trúc DataSet
Cấu trúc của DataSet giống hệt cấu trúc của cơ sở dữ liệu
Mỗi dataset gồm nhiều bảng

Các bảng có ràng buộc với nhau
Mỗi bảng có nhiều dòng và cột
Mỗi cột có nhiều dòng
Mỗi dòng có nhiều cột
Kết hợp với SqlDataAdapter để cập thao tác với dữ liệu
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
7
SqlCommandBuilder sẽ đọc câu SQL lấy từ SqlDataAdapter sau
đó suy ra các lệnh insert, update và delete, sau đó gán các
lệnh mới vào các property Insert, Update, Delete của
SqlDataAdapter tương ứng.
Khai báo
SqlCommandBuilder cb= new SqlCommandBuilder(adapter);
Sử dụng SqlcommandBuilder
SqlCommandBuilder sẽ đọc câu SQL lấy từ SqlDataAdapter sau
đó suy ra các lệnh insert, update và delete, sau đó gán các
lệnh mới vào các property Insert, Update, Delete của
SqlDataAdapter tương ứng.
Khai báo
SqlCommandBuilder cb= new SqlCommandBuilder(adapter);
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
8
Cập nhật thực thi câu lệnh SQL và đưa vào DataAdapter,
cập nhật từ DataSet vào CSDL
adapter.Update(ds, "Employees");
THAO TÁC DỮ LIỆU VỚI KIẾN TRÚC
KHÔNG KẾT NỐI
Thao tác với DataTable
DataTable dt = new DataTable(); // khai báo data table
SqlConnection conn = new SqlConnection(ConnectionString);

SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataAdapter da = new SqlDataAdapter(cmd);
conn.Open();
da.Fill(dt); // Đưa dữ liệu vào Datatable
conn.Close();
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
DataTable dt = new DataTable(); // khai báo data table
SqlConnection conn = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataAdapter da = new SqlDataAdapter(cmd);
conn.Open();
da.Fill(dt); // Đưa dữ liệu vào Datatable
conn.Close();
10
Ứng dụng đưa dữ liệu từ Dataset vào Listview
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
11
Làm việc với Data Row
Khai báo 1 biến DataRow
int index = lvwBookDetails.SelectedItems[0].Index;
DataRow dr = ds.Tables["Tên bảng"].Rows[chỉ số hàng];
txtCode.Text = dr[“productcode”].ToString(); // Gán giá trị
txtPrice.Text = dr["UnitPrice"].ToString();
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
12
Demo sử dụng Datarow lấy dữ liệu của hàng được chọn
Demo Thêm một bản ghi từ Dataset vào CSDL
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nốiLập trình với CSDL - ADO.Net & Kiến trúc không kết nối
14
Các bước để xóa bản ghi Data Set

Lập trình với CSDL - ADO.Net & Kiến trúc không kết nốiLập trình với CSDL - ADO.Net & Kiến trúc không kết nối
15
Demo Xóa bản ghi trên Dataset và CSDL
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nốiLập trình với CSDL - ADO.Net & Kiến trúc không kết nối
16
Các bước để sửa 1 dòng trên Data Set
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nốiLập trình với CSDL - ADO.Net & Kiến trúc không kết nối
17
Demo Sửa một bản ghi từ Dataset vào CSDL
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nốiLập trình với CSDL - ADO.Net & Kiến trúc không kết nối
18
Bài tập về nhà
Lập trình hoàn thành các chức năng Quản lý khách
hàng bằng kiến trúc không kết nối.
Buộc dữ liệu là một quá trình mà dữ liệu của điều khiển
trên giao diện liên kết trực tiếp với dữ liệu trên CSDL
Tính năng buộc dữ liệu cho phép hiển thị dữ liệu và thao
tác với dữ liệu một cách dễ dàng từ điều khiển
Buộc dữ liệu
Lập trình với CSDL - Kiến trúc kết nối & buộc dữ liệu
20
Điều khiển hỗ trợ buộc dữ liệu được gọi là điều khiển
buộc
Điều khiển buộc là điều khiển liên kết với dữ liệu trên
CSDL
Thuộc tính DataSource của điều khiển buộc chỉ ra
nguồn dữ liệu cho điều khiển (thường là bảng trên
dataset)
.NET FrameWork hỗ trợ rất nhiều điều khiển buộc như:
TextBox, ComboBox, DataGridView…

Điều khiển buộc
Điều khiển hỗ trợ buộc dữ liệu được gọi là điều khiển
buộc
Điều khiển buộc là điều khiển liên kết với dữ liệu trên
CSDL
Thuộc tính DataSource của điều khiển buộc chỉ ra
nguồn dữ liệu cho điều khiển (thường là bảng trên
dataset)
.NET FrameWork hỗ trợ rất nhiều điều khiển buộc như:
TextBox, ComboBox, DataGridView…
Lập trình với CSDL - Kiến trúc kết nối & buộc dữ liệu
21
Là điều khiển dùng để hiển thị dữ liệu từ 1 nguồn dữ liệu
DataGridView
Lập trình với CSDL - Kiến trúc kết nối & buộc dữ liệu
22
Hai thuộc tính quan trọng của DataGridView là;
Datagridview.DataSource= dataset // Nhận nguồn dữ liệu từ DS
Datagridview.DataSource= "tên bảng";
Demo điều khiển buộc DataGridView
Lập trình với CSDL - Kiến trúc kết nối & buộc dữ liệu
23
Demo điều khiển buộc Combobox
Lập trình với CSDL - Kiến trúc kết nối & buộc dữ liệu
24
Các loại data provider này tương tự nhau, chúng ta sẽ
tập trung vào SqlDataProvider
Các thao tác xử lý dữ liệu với đối tượng
SQlCommand
Làm việc với Data Set

Làm việc với Data Table, Data Row, Xử lý dữ liệu
trên Data Set.
Các điều khiển DataGridView/ Combobox
Tổng kết bài học
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
Các loại data provider này tương tự nhau, chúng ta sẽ
tập trung vào SqlDataProvider
Các thao tác xử lý dữ liệu với đối tượng
SQlCommand
Làm việc với Data Set
Làm việc với Data Table, Data Row, Xử lý dữ liệu
trên Data Set.
Các điều khiển DataGridView/ Combobox
Lập trình với CSDL - ADO.Net & Kiến trúc không kết nối
25

×