Chức năng của DataAdapter

Một phần của tài liệu bài giảng lập trình windows (Trang 132)

a. Đổ dữ liệu vào Dataset hoặc dataTable

Sau khi có đối tượng DataAdapter với nội dung SelectCommand và thông tin về kết nối, chúng ta có thể sử dụng DataAdapter để lấy dữ liệu về cho các đối tượng chứa dữ liệu như DataTable, DataSet qua phương thức Fill. Phương thức trả về số mẩu tin lấy về được.

 Đổ dữ liệu vào DataTable có sẵn: Fill(tên_datatable)

 Đổ dữ liệu vào DataSet có sẵn. Dữ liệu được lấy về Dataset dưới dạng các DataTable, với tên mặc định là Table,Table1,Table2,…

Fill(tên_dataset)

 Đổ dữ liệu vào DataSet cho bảng <tên_ DataTable>; nếu chưa có, bảng sẽ được tạo.

Fill(tên_dataset, tên_DataTable)

Trong đó tên_dataTable không nhất thiết phải trùng với tên của bảng trong cơ sở dữ liệu.

Ví dụ 5.8a: Sử dụng DataAdapter và DataSet để hiển thị thông tin về các hóa đơn bán hàng.

127 Trong ví dụ này ta thiết kế form chứa hai đối tượng. Một label với dòng text là Bảng kê chi tiết bán hàng và một đối tượng DataGridView. Ban đầu khi thêm DataGridView vào ta được form như hình thu nhỏ dưới đây:

Phần code của chương trình được viết như sau: ' khai báo namespace của dataset Imports System.Data

Thủ tục Load của form: Tao_ket_noi()

if Ket_noi.State = ConnectionState.Closed Then Ket_noi.Open()

End if

' tạo dataAdapter

Dim lenhSql = "select * from banhang"

Dim adapter1 As New SqlClient.SqlDataAdapter(lenhSql, _ Ket_noi)

' tạo và đổ dữ liệu vào dataset, đặt tên bảng mới Dim dataset1 As New DataSet

adapter1.Fill(dataset1, "chitiethd")

' đặt thuộc tính cho lưới

DataGridView1.DataSource = dataset1 DataGridView1.DataMember = "chitiethd"

128 Kết quả chạy chương trình:

Ví dụ 5.8 b: Thiết kế form trong ví dụ 5.8a bằng cách sử dụng DataAdapter và DataTable:

Imports System.Data

Public Class Form2

Private Sub Form2_Load(ByVal sender As System.Object, ByVal

e As System.EventArgs) Handles MyBase.Load ' tạo dataAdapter lấy tên bo_doc_ghi

Dim lenhSQL As String = "select * from banhang"

Dim bo_doc_ghi As New SqlClient.SqlDataAdapter(lenhSQL, _ Chuoi_ket_noi)

' khai báo đối tượng dataTable Dim dataTable1 As New DataTable

' đổ dữ liệu từ dataAdapter vào dataTable bo_doc_ghi.Fill(dataTable1)

' gắn lưới với dataTable

DataGridView1.DataSource = dataTable1 End Sub

129

Một phần của tài liệu bài giảng lập trình windows (Trang 132)

Tải bản đầy đủ (PDF)

(180 trang)