Professional Documents
Culture Documents
Hoặc
• Bạn cũng có thể tham chiếu tới một bảng thông qua chỉ
số của nó trong dataset
Dim myCustomerTable As DataTable = myDataSet.Tables(0)
• Ta cũng có thể tham chiếu tới cột thông qua chỉ số:
Dim myColumn As DataColumn
myColumn = myCustomerTable.Columns(0)
Để thêm một cột mới vào một bảng ta sử dụng phương thức Add trong
thuộc tính Column của bảng:
Bạn có thể thêm một khóa chính bằng cách thiết lập giá trị False cho thuộc tính
AllowDBNull, và giá trị true cho thuộc tính Unique của DataColumn
Dim myColumn As DataColumn =
myCustomerTable.Columns.Add("Address",
Type.GetType("System.String"))
myColumn.AllowDBNull = False
myColumn.Unique = True
Hoặc bạn có thể xác định thuộc tính PrimaryKey của một đối tượng bảng
Dim myColumn(1) As DataColumn
myColumn(0) = myCustomerTable.Columns("CustomerID")
myCustomerTable.PrimaryKey = myColumn
Nếu khóa chính được tạo bởi nhiểu trường bạn sử dụng như sau:
Dim myColumn(2) As DataColumn
myColumn(0) = myCustomerTable.Columns("CustomerID")
myColumn(1) = myCustomerTable.Columns("PostalCode")
myCustomerTable.PrimaryKey = myColumn
Đối tượng DataRow
myCustomerTable.Rows(0)
• Để duyệt tất cả các hàng trong tập hợp DataRow ta sử dụng:
• Mỗi DataRow có một thuộc tính RowState để luu trữ trạng thái
của dòng đó. Ta có thể kiểm tra trạng thái của 1 dòng trước khi
thực hiện các thao tác để đảm bảo rằng nó phù hợp với các điều
kiện đặt ra. Để hiển thị trạng thái của dòng đầu tiên trong bảng ta
sử dụng lệnh:
Console.WriteLine("My Row State is " &
myCustomerTable.Rows(0).RowState.ToString())
• Để truy cập vào từng cột ta sử dụng thuộc tính Item của
DataRow. Ta có thể sử dụng chỉ mục, tên cột hoặc đối tượng cột
để truy nhập tới cột
Các trạng thái của một dòng đóng vai trò quan trọng trong việc trong
việc xác định dòng nào sẽ được cập nhật. Một dòng có thể có nhiều
trạng thái khác nhau. Khi bạn thay đổi, sửa một bản ghi thì dòng tương
ứng sẽ được bật cờ.
Lưu ý rằng những phương pháp này chỉ cập nhật các bảng trong DataSet cục bộ
mà không ảnh hưởng tới CSDL trên server. Để cập nhật những thay đổi này vào
CSDL trên server ta sử dụng DataAdapter
Để xóa một dòng trong bảng ta gọi phương thức Delete của DataRowCollection
Khi bạn thực hiện các thay đổi trên DataSet làm thế nào để cập nhật những thay
đổi này vào CSDL?
Những phương thức chúng ta sử dụng sau đây giả sử rằng bạn chưa gọi
AcceptChanges trên bất cứ 1 bản ghi đã được chỉnh sửa trước khi chúng ta cập
nhật những thay đổi đó vào CSDL. Để cập nhật DataSet ta gọi phương thức
Update của DataAdapter. Nó kiểm tra RowState của mỗi dòng để xác định các
dòng đã bị thay đổi sau đó cho thực hiện các phương thức Insert, Update, or
Delete tùy theo Rowstate tương ứng
Gắn kết dữ liệu vào các điều khiển
Hầu hết các điều khiển trong hộp công cụ đều có khả năng gắn kết dữ
liệu, điều đó có nghĩa rằng chúng ta có thể chỉ định một cột, hoặc đôi
khi một nhóm các cột, từ một bảng cơ sở dữ liệu được hiển thị trong
nó. Khi bạn di chuyển qua lại giữa các dòng trong một bảng, thì nội
dung của cột hoặc các cột được chọn sẽ hiển thị trong điều khiển.
Các điều khiển có khả năng gắn kết dữ liệu bao gồm TextBoxes,
Labels, CheckBoxes, ComboBoxes và ListBoxes.
Hầu hết các điều khiển này được gắn kết dữ liệu bằng cách thiết lập
thuộc tính DataBindings.Text là tên cả một bảng mà ta muốn gắn kết.
Các điều khiển khác như DataGrid sử dụng thuộc tính DataSource và
DataMember cho việc gắn kết.
• Đối tượng DataReader
– Khi bạn muốn truy cập dữ liệu với số lượng nhỏ và không cần
xử lý hay điều hướng trên mẩu tin, bạn có thể sử dụng đối
tượng SqlDataReader hay OleDbDataReader. Lưu ý rằng chúng
ta không tìm hiểu chi tiết lý thuyết mà chỉ tập trung vào các ví dụ
cụ thể.
– Trong trường hợp bạn muốn viết đoạn chương trình dùng để
kiểm tra người sử dụng đó tồn tại trong bảng của có sở dữ liệu
SQL Server hay không, bạn chỉ cần sử dụng đối tượng
DataReader.
– Để điền dữ liệu từ dữ liệu nguồn vào đối tượng DataReader,
bạn sử dụng phương thức ExecuteReader của đối tượng
Command.