http:// lhu.edu.vn11 L i ích trong vi¸ c sædØng DataSet Hoàn toàn trong bộ nhớ: Một Table trong Dataset là một Array of Rows, nên ta có thể dùng thẳng direct access một record bằng c
Trang 1http:// lhu.edu.vn
11
L i ích trong vi¸ c sædØng DataSet
Hoàn toàn trong bộ nhớ: Một Table trong Dataset là một Array of Rows, nên ta có thể dùng thẳng (direct access) một record bằng cách nói đến cái Row chứa nó, chớ không cần phải dùng MoveNext, MovePrev,.v.v
Làm nhẹ công tác của Database server Tất cả mọi công tác sửa đổi dữ liệu đều được thực hiện trong Dataset
Dataset có thể đư ợc biểu diễn bằng một XML (eXtensible Marked Language)
This is trial version www.adultpdf.com
Trang 2http:// lhu.edu.vn
12
DataTable là 01 thành ph«n trong Dataset
DataTable ch a d li¸ u cº a 01 b§ng trong Dataset và thu c l p DataTable.Datable bao g m
• T–p h p Columns thuôc l p DataColumnCollectiontrong đ ó m i c t
là m t đ i tm ng thu c l p DataColumn
• T–p h p Rows thuôc l p DataRowCollectiontrong đ ó m i c t là m t
đ i tm ng thu c l p DataRow
This is trial version www.adultpdf.com
Trang 3http:// lhu.edu.vn
13
DataRelation:
Dataset bao g m t–p h p các table đ ¥i di¸ n bª i các đ i tm ng DataTable và quan h¸ gi a các table đ ó đ ¥i di¸ n bª i các đ i
tm ng DataRelation
DataRelation, ngmÆi dùng có th˙ :
• ˇ nh ngh›a m i quan h¸ gi a các b§ng
• Duy¸ t d li¸ u trong các b§ng theo m i quan h¸ Master – Detail
aM t đ i tm ng ki˙ u DataRelation bao g m các thông tin:
• Tên cº a Parent Table và Child Table
• Các column trong DataRelation đ ¥i di¸ n cho PrimaryKey trong Parent và ForeignKey trong Child Table
This is trial version www.adultpdf.com
Trang 4http:// lhu.edu.vn
14
V i DataRelation, ADO.NET cung c' p cho ngmÆi l–p trình m t cách th c m i đ ˙ xæ lý d li¸ u D li¸ u vfln n m trong các b§ng thay vì b ˇ gom t nhi¯ u b§ng thành 01 RecordSet nhmng v fln có th˙ truy c–p d dàng và hi¸ u qu§
Ví dØ: trong parent table có 10 dòng, m i dòng trong Parent table
có 10 dòng con trong Child table
Cách c˚ : dùng 01 truy v' n kˆ t h p hai b§ng đ ˙ l' y 1 l«n 100 mflu tin hay dùng 02 RecordSet, m i l«n RecordSet Master thay
đ i mflu tin hi¸ n hành thì mª l¥i RecordSet Detail
This is trial version www.adultpdf.com
Trang 5http:// lhu.edu.vn
15
DataRelation:
Khuyˆ t đ i˙ m: d li¸ u bˇ l' y th a vì không ch‡c ngmÆi dùng s` đ i xem hˆ t 100 mflu tin đ ã l' y và khó thao tác thêm, sæa, xóa, V i cách th 2, d li¸ u ch˝ l' y v a đ º nhmng ch –m hk n vì m i l«n thay đ i Master l¥i ph§i truy v' n d li¸ u cho Detail
Phương pháp mới: Chỉ cần lấy dữ liệu 01 lần duy nhất nhưng dữ liệu vẫn nằm trong các bảng, dễ dàng thao tác xử lý
This is trial version www.adultpdf.com
Trang 6http:// lhu.edu.vn
16
lo¥i ràng bu c
UniqueConstraint: đ §m b§o tính duy nh' t v¯ giá trˇ cº a m t c t trong table
ForeignKeyContraint: ch˝ ra cách ng dØng s` thı c hi¸ n khi c–p nh–t hay xóa d li¸ u trên b§ng có quan h¸ v i b§ng khác
Các giá trˇ cº a ForeignKeyContraint là:
None: không làm gì c§
Cascade: phØ thu c vào dòng trên parent table s` bˇ c–p nh–t hay xóa
SetDefault:giá trˇ cº a c t khóa ngo¥i trên detail table đm c đ »t v¯ giá trˇ m»c đ ˇnh khi dòng trên parent table bˇ xóa
SetNull: gi ng SetDefault , giá trˇ đm c đ »t là NULL
This is trial version www.adultpdf.com
Trang 7http:// lhu.edu.vn
17
DataView:
aDataView g«n gi ng v i khái ni¸ m RecordSet cº a ADO Trên a
m t DataTable có th˙ t¥o nhi¯ u DataView v i các đ i¯ u ki¸ n l c, s‡p xˆ p d li¸ u khác nhau Trên DataView ta có th˙ xem hay thay đ i giá trˇ các mflu tin
DataView cº a ADO.NET có nhi¸ m vØ kˆ t n i v i các control cº a WinForm và Web Form
This is trial version www.adultpdf.com
Trang 8http:// lhu.edu.vn
18
H tr nhi¯ u ngmÆi dùng (Scanlability)
Mª r ng kh§ n ng làm vi¸ c v i CSDL (Productivity)
Hi¸ u qu§ cao trong xælý d li¸ u (Performance)
Ck chˆ làm vi¸ c ª ADO.NET:
XædØng d li¸ u ª d¥ng disconnect data
Client t¥o kˆ t n i v i server đ ˙ l' y d li¸ u
Server gæi d li¸ u v¯ cho Client
Client ng‡t kˆ t n i v i Server
Khi c«n c–p nh–t d li¸ u, kˆ t n i gi a Client và Server đm c phØc h i
ThÆi gian kˆ t n i gi a Client và Server không còn lâu nhm trm c
This is trial version www.adultpdf.com
Trang 9http:// lhu.edu.vn
19
Khai báo và sử dụng không gian tên (namespace)
<%@ Import Namespace="System.Data.OleDb" %>
-Các đ i tm ng và ki˙ u ck b§n phØc vØADO.NET
-Các l p đm c thiˆ t kˆ đ ˙ làm vi¸ c
v i b' t k ngu n d li¸ u nào
- Thiˆ t kˆ t i mu cho CSDL SQL server
-System.Data
-System.Data.OleDb
-System.Data.SqlClient
MØc đ ích Namespace
This is trial version www.adultpdf.com
Trang 10http:// lhu.edu.vn
20
ng v i m i tên mi¯ n có m t connection tmkng ng
C§ OleDBConnection và SQLConnection đ ¯ u có các thu c tính
và phmkng th c gi ng nhau nhm ConnectionString , State hay Open
- Các Provider mà OLEDB và SQL có th˙ kˆ t n i d li¸ u:
SQLOLEDB: OLEDB Provider cº a Microsoft cho SQL Server
MSDAORA: OLEDB Provider cº a Microsoft cho Oracle
JOLT: OLEDB Provider cho Jet
This is trial version www.adultpdf.com