http:// lhu.edu.vn
http:// lhu.edu.vn
11
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n trong ADO.NET
n trong ADO.NET
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
http:// lhu.edu.vn
http:// lhu.edu.vn
12
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n trong ADO.NET
n trong ADO.NET
DataTable:
DataTable:
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
http:// lhu.edu.vn
http:// lhu.edu.vn
13
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n trong ADO.NET
n trong ADO.NET
DataRelation:
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
http:// lhu.edu.vn
http:// lhu.edu.vn
14
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n trong ADO.NET
n trong ADO.NET
DataRelation:
DataRelation:
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 vfln 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
http:// lhu.edu.vn
http:// lhu.edu.vn
15
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n trong ADO.NET
n trong ADO.NET
DataRelation:
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 hkn vì m i l«n
thay đ i Master l¥i ph§i truy v' n d li¸ u cho Detail
Phương ph
Phương ph
á
á
p m
p m
ớ
ớ
i: Ch
i: Ch
ỉ
ỉ
c
c
ầ
ầ
n l
n l
ấ
ấ
y d
y d
ữ
ữ
li
li
ệ
ệ
u 01 l
u 01 l
ầ
ầ
n duy nh
n duy nh
ấ
ấ
t
t
nhưng d
nhưng d
ữ
ữ
li
li
ệ
ệ
u v
u v
ẫ
ẫ
n n
n n
ằ
ằ
m trong c
m trong c
á
á
c b
c b
ả
ả
ng, d
ng, d
ễ
ễ
d
d
à
à
ng thao t
ng thao t
á
á
c x
c x
ử
ử
lý
lý
This is trial version
www.adultpdf.com
http:// lhu.edu.vn
http:// lhu.edu.vn
16
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n trong ADO.NET
n trong ADO.NET
R
R
à
à
ng Bu
ng Bu
ộ
ộ
c Trên Quan H
c Trên Quan H
ệ
ệ
:
: ADO.NET ch˝ cho phép xác đ ˇnh 02
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
http:// lhu.edu.vn
http:// lhu.edu.vn
17
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
C
C
á
á
c th
c th
à
à
nh ph
nh ph
ầ
ầ
n trong ADO.NET
n trong ADO.NET
DataView:
DataView:
a
aDataView g«n gi ng v i khái ni¸ m RecordSet cº a ADO. Trên
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
http:// lhu.edu.vn
http:// lhu.edu.vn
18
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
Đi
Đi
ể
ể
m n
m n
ổ
ổ
i b
i b
ậ
ậ
t trong ADO.NET
t trong ADO.NET
Tmkng tác gi a nhi¯ u h¸ th ng khác nhau (Interoperability)
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
http:// lhu.edu.vn
http:// lhu.edu.vn
19
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
C
C
á
á
c đ
c đ
ố
ố
i tư
i tư
ợ
ợ
ng trong ADO.NET
ng trong ADO.NET
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 đ íchNamespace
This is trial version
www.adultpdf.com
http:// lhu.edu.vn
http:// lhu.edu.vn
20
Ts. V
Ts. V
ũ Đứ
ũ Đứ
c Lung
c Lung
–
–
Ks
Ks
. H
. H
uỳ
uỳ
nh Cao Tu
nh Cao Tu
ấ
ấ
n
n
-
-
Ks
Ks
. P
. P
han H
han H
ữ
ữ
u Ti
u Ti
ế
ế
p
p
Đ
Đ
ố
ố
i tư
i tư
ợ
ợ
ng Connection
ng Connection
Data Provider:
Data Provider có s„ n trong ADO.NET
• System.Data.OleDb
• System.Data.SqlClient
ng v i m i tên mi¯ n có m t connection tmkng ng
System.Data.OleDb.OleDbConnection
System.Data.SqlClient.SqlConnection
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