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

Giáo trình c# và NET framework bài 5 và 6

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 (319.84 KB, 29 trang )

Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n
n
Quang Minh
Quang Minh
1
1
C# and .NET Framework
C# and .NET Framework
B
B
à
à
i 5:
i 5:
Windows Application
Windows Application
Đo
Đo
à


à
n Quang Minh
n Quang Minh


http
http
://www.VTPortal.net
://www.VTPortal.net
Last update:
Last update:
30. December 2006
30. December 2006
Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n
n
Quang Minh
Quang Minh
2

2
M
M


c l
c l


c
c
Windows Application in .NET
Windows Application in .NET
Windows Forms
Windows Forms
Windows Controls
Windows Controls
Custom Controls
Custom Controls
Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo
Đo
à

à
n
n
Quang Minh
Quang Minh
3
3
Windows Application in .NET
Windows Application in .NET
L
L


ch s
ch s




ng d
ng d


ng trên Windows
ng trên Windows


C
C
ó

ó
hai lo
hai lo


i
i


ng d
ng d


ng: rich client v
ng: rich client v
à
à
thin client.
thin client.




ng d
ng d


ng rich client c
ng rich client c
ó

ó
nhi
nhi


u ưu đi
u ưu đi


m: giao di
m: giao di


n đ
n đ


p, t
p, t


c đ
c đ


x
x


lý cao, t

lý cao, t


n d
n d


ng đư
ng đư


c c
c c
á
á
c s
c s


c m
c m


nh c
nh c


a h
a h



đi
đi


u h
u h
à
à
nh.
nh.


C
C
á
á
c
c


ng d
ng d


ng rich client đư
ng rich client đư


c xây d

c xây d


ng d
ng d


a trên c
a trên c
á
á
c h
c h
à
à
m API
m API
(Application Programming Interface). Do t
(Application Programming Interface). Do t
í
í
nh ph
nh ph


c t
c t


p, nên xu

p, nên xu


t
t
hi
hi


n m
n m


t s
t s


môi trư
môi trư


ng l
ng l


p tr
p tr
ì
ì
nh kh

nh kh
á
á
c (Visual Basic, MFC trên
c (Visual Basic, MFC trên
Visual C++).
Visual C++).


.NET cung c
.NET cung c


p m
p m


t gi
t gi


i ph
i ph
á
á
p đơn gi
p đơn gi


n v

n v
à
à
hi
hi


u qu
u qu


trong vi
trong vi


c
c
l
l


p tr
p tr
ì
ì
nh c
nh c
á
á
c

c


ng d
ng d


ng rich client trên Windows
ng rich client trên Windows
namespace
namespace
System.Windows.Forms
System.Windows.Forms


Cung
Cung
c
c


p
p
c
c
á
á
c
c
đ

đ


i
i




ng
ng
đ
đ


l
l
à
à
m
m
vi
vi


c
c
v
v



i
i
Windows Form
Windows Form
Cho
Cho
ph
ph
é
é
p
p
x
x




c
c
á
á
c
c
s
s


ki

ki


n
n
chu
chu


t
t
v
v
à
à
b
b
à
à
n
n
ph
ph
í
í
m
m
Cho
Cho
ph

ph
é
é
p
p
x
x




c
c
á
á
c
c
n
n
ú
ú
t
t
l
l


nh
nh
,

,
c
c
á
á
c
c
h
h


p
p
so
so


n
n
th
th


o
o
,
,
c
c
á

á
c
c
thanh
thanh
cu
cu


n
n
,
,
c
c
á
á
c
c
c
c


a
a
s
s


,

,


Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n
n
Quang Minh
Quang Minh
4
4
Windows Forms
Windows Forms
L
L
à
à
c
c
á

á
c
c
c
c


a
a
s
s


c
c


a
a


ng
ng
d
d


ng
ng
ch

ch


y
y
trên
trên
Windows
Windows


T
T


o
o


ng
ng
d
d


ng
ng
rich client
rich client
C

C
ó
ó
í
í
t
t
nh
nh


t
t
m
m


t
t
form
form
k
k
ế
ế
th
th


a

a
t
t


Form.
Form.
Trên
Trên
form
form
c
c
ó
ó
th
th


ch
ch


a
a
c
c
á
á
c

c
control.
control.
M
M


t
t
control
control
c
c
ó
ó
th
th


ph
ph
á
á
t
t
sinh
sinh
s
s



ki
ki


n
n
:
:
đ
đ


x
x




ph
ph


i
i
handler
handler
s
s



ki
ki


n
n
.
.
Thay
Thay
đ
đ


i
i
di
di


n
n
m
m


o
o
c

c


a
a
form
form
ho
ho


c
c
control
control
b
b


ng
ng
c
c
á
á
ch
ch
thay
thay
đ

đ


i
i
c
c
á
á
c
c
thu
thu


c
c
t
t
í
í
nh
nh
.
.
Thu
Thu


c

c
t
t
í
í
nh
nh
quan
quan
tr
tr


ng
ng
(
(
m
m


i
i
): Anchor
): Anchor


Menu
Menu
M

M


t
t


ng
ng
d
d


ng
ng
c
c
ó
ó
th
th


c
c
ó
ó
h
h



th
th


ng
ng
menu. Menu
menu. Menu
c
c
ó
ó
th
th


c
c
ó
ó
nhi
nhi


u
u
l
l



p
p
.
.
Thu
Thu


c
c
t
t
í
í
nh
nh
quan
quan
tr
tr


ng
ng
: Name
: Name
v
v
à

à
Text.
Text.
S
S


ki
ki


n
n
quan
quan
tr
tr


ng
ng
: click
: click
Menu
Menu
c
c
ó
ó
th

th


thay
thay
đ
đ


i
i
thu
thu


c
c
t
t
í
í
nh
nh
l
l
ú
ú
c
c
run

run
-
-
time
time


Context menu
Context menu
M
M


t
t
đ
đ


i
i




ng
ng
c
c
ó

ó
th
th


c
c
ó
ó
menu
menu
ng
ng


c
c


nh
nh
.
.
Menu
Menu
ng
ng


c

c


nh
nh
ho
ho


t
t
đ
đ


ng
ng
gi
gi


ng
ng
menu
menu
thông
thông
thư
thư



ng
ng
.
.


B
B
à
à
i
i
t
t


p
p
:
:
xây
xây
d
d


ng
ng
tr

tr
ì
ì
nh
nh
Notepad
Notepad
Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n
n
Quang Minh
Quang Minh
5
5
Windows Forms
Windows Forms
Dialogs
Dialogs



Hi
Hi


n
n
th
th


thông
thông
b
b
á
á
o
o
v
v
à
à
nh
nh


n
n
tr

tr


l
l


i
i
c
c


a
a
ngư
ngư


i
i
d
d
ù
ù
ng
ng
.
.



C
C
ó
ó
hai
hai
ki
ki


u
u
Modal
Modal
v
v
à
à
Modeless.
Modeless.


C
C
ó
ó
th
th



tr
tr


v
v


c
c
á
á
c
c
gi
gi
á
á
tr
tr


: Abort, Cancel, Ignore, No, Yes, None,
: Abort, Cancel, Ignore, No, Yes, None,
Ok, Retry.
Ok, Retry.


Đ

Đ


hi
hi


n
n
th
th


h
h


p
p
tho
tho


i
i
,
,
d
d
ù

ù
ng
ng
phương
phương
th
th


c
c
Form.ShowDialog
Form.ShowDialog
().
().
Phương
Phương
th
th


c
c
n
n
à
à
y
y
s

s


tr
tr


v
v


gi
gi
á
á
tr
tr


thu
thu


c
c
ki
ki


u

u
DialogResult
DialogResult
.
.
Common Dialogs:
Common Dialogs:
h
h


p
p
tho
tho


i
i
thông
thông
d
d


ng
ng


Windows

Windows
cung
cung
c
c


p
p
s
s


n
n
m
m


t
t
s
s


h
h


p

p
tho
tho


i
i
thông
thông
d
d


ng
ng
.
.
Đ
Đ
ó
ó
l
l
à
à
c
c
á
á
c

c
h
h


p
p
ch
ch


n
n
font,
font,
ch
ch


n
n
m
m
à
à
u
u
,
,
m

m


file,
file,
đ
đ
ó
ó
ng
ng
file,
file,




M
M


i
i
h
h


p
p
tho

tho


i
i
tương
tương


ng
ng
v
v


i
i
1
1
l
l


p
p
trong
trong
namespace Forms,
namespace Forms,
v

v
à
à
c
c
ó
ó
tương
tương


ng
ng
c
c
á
á
c
c
thu
thu


c
c
t
t
í
í
nh

nh
đ
đ


c
c
trưng
trưng
riêng
riêng
bi
bi


t
t
.
.
C
C
á
á
c
c
l
l


p

p
bao
bao
g
g


m
m
:
:
ColorDialog
ColorDialog
,
,
FontDialog
FontDialog
,
,
OpenFileDialog
OpenFileDialog
,
,
SaveFileDialog
SaveFileDialog
,
,
PageSetupDialog
PageSetupDialog
,

,
PrintDialog
PrintDialog
,
,
PrintPreviewDialog
PrintPreviewDialog
.
.


B
B
à
à
i
i
t
t


p
p
:
:
l
l
à
à
m

m
t
t


t
t
hơn
hơn


ng
ng
d
d


ng
ng
Notepad.
Notepad.
Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo

Đo
à
à
n
n
Quang Minh
Quang Minh
6
6
Windows Controls
Windows Controls
C
C
ó
ó
r
r


t
t
nhi
nhi


u
u
control
control
trong

trong
Windows.
Windows.
M
M


i
i
control
control
đ
đ


u
u
c
c
ó
ó
th
th


đi
đi


u

u
khi
khi


n
n
thông
thông
qua
qua
c
c
á
á
c
c
phương
phương
th
th


c
c
/
/
thu
thu



c
c
t
t
í
í
nh
nh
v
v


i
i
tên
tên
g
g


i
i
nh
nh


.
.



Labels
Labels


Buttons
Buttons


Checkboxes
Checkboxes


Menus
Menus


Radio buttons
Radio buttons


Combo boxes
Combo boxes


Listboxes
Listboxes


Textboxes

Textboxes


Tabcontrols
Tabcontrols


Toolbars
Toolbars


Tree views
Tree views
Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n
n
Quang Minh
Quang Minh
7

7
Windows Controls
Windows Controls
Data Binding
Data Binding


L
L
à
à
phương
phương
ph
ph
á
á
p
p
g
g


n
n
k
k
ế
ế
t

t
d
d


li
li


u
u
v
v
à
à
o
o
m
m


t
t
control
control
M
M


i

i
control
control
đ
đ


u
u
ch
ch


a
a
d
d


li
li


u
u
.
.
V
V
í

í
d
d


:
:
h
h


p
p
checkbox
checkbox
s
s


ch
ch


a
a
d
d


li

li


u
u
ki
ki


u
u
bool
bool
,
,
h
h


p
p
textbox
textbox
ch
ch


a
a
d

d


li
li


u
u
ki
ki


u
u
string,
string,
h
h


p
p
listbox
listbox
ch
ch


a

a
d
d


li
li


u
u
ki
ki


u
u
t
t


p
p
h
h


p
p
.

.
Khi
Khi
c
c
ó
ó
m
m


t
t
ngu
ngu


n
n
d
d


li
li


u
u
,

,
c
c
ó
ó
th
th


g
g


n
n
v
v
à
à
o
o
m
m


t
t
control:
control:
thông

thông
thư
thư


ng
ng
control
control
s
s


ch
ch


a
a
m
m


t
t
t
t


p

p
d
d


li
li


u
u
,
,
nhưng
nhưng
ch
ch


c
c
ó
ó
m
m


t
t
m

m


u
u
d
d


li
li


u
u
đư
đư


c
c
x
x
á
á
c
c
đ
đ



nh
nh
l
l
à
à
hi
hi


n
n
th
th


i
i
.
.
interface
interface
IList
IList


M
M



t
t
đ
đ


i
i




ng
ng
d
d


li
li


u
u
mu
mu


n

n
tr
tr


th
th
à
à
nh
nh
ngu
ngu


n
n
d
d


li
li


u
u
th
th
ì

ì
ph
ph


i
i
c
c
à
à
i
i
đ
đ


t
t
giao
giao
ti
ti
ế
ế
p
p
IList
IList
.

.
H
H


u
u
h
h
ế
ế
t
t
c
c
á
á
c
c
đ
đ


i
i




ng

ng
t
t


p
p
h
h


p
p
c
c


a
a
.NET
.NET
đ
đ


u
u
c
c
à

à
i
i
đ
đ


t
t
giao
giao
ti
ti
ế
ế
p
p
n
n
à
à
y
y
.
.


B
B
à

à
i
i
t
t


p
p
:
:
vi
vi
ế
ế
t
t
h
h


p
p
tho
tho


i
i
ch

ch


n
n
tên
tên
,
,
nơi
nơi


(
(
th
th
à
à
nh
nh
ph
ph


,
,
qu
qu



n
n
huy
huy


n
n
)
)
c
c


a
a
m
m


t
t
ngư
ngư


i
i
.

.
Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n
n
Quang Minh
Quang Minh
8
8
Custom Controls
Custom Controls
Custom Controls
Custom Controls


R
R


t

t
quan
quan
tr
tr


ng
ng
,
,
cho
cho
ph
ph
é
é
p
p
l
l


p
p
tr
tr
ì
ì
nh

nh
viên
viên
m
m


r
r


ng
ng
c
c
á
á
c
c
đ
đ


i
i




ng

ng
đi
đi


u
u
khi
khi


n
n
.
.


Trong
Trong
.NET, custom control
.NET, custom control
đư
đư


c
c
k
k
ế

ế
th
th


a
a
t
t


l
l


p
p
UserControl
UserControl
.
.
T
T


o
o
custome
custome
control

control
đơn
đơn
gi
gi


n
n


G
G


m
m
m
m


t
t
t
t


p
p
c

c
á
á
c
c
control
control
c
c
ó
ó
s
s


n
n
c
c


a
a
windows
windows
Thi
Thi
ế
ế
t

t
k
k
ế
ế
như
như
m
m


t
t
windows form
windows form
M
M


r
r


ng
ng
thêm
thêm
c
c
á

á
c
c
phương
phương
th
th


c
c
v
v
à
à
thu
thu


c
c
t
t
í
í
nh
nh
T
T



o
o
custome
custome
control
control
m
m


r
r


ng
ng


Nh
Nh


m
m
m
m


c

c
đ
đ
í
í
ch
ch
m
m


r
r


ng
ng
t
t
í
í
nh
nh
năng
năng
control
control
s
s



n
n
c
c
ó
ó
K
K
ế
ế
th
th


a
a
t
t


control
control
c
c


n
n
m

m


r
r


ng
ng
Thêm
Thêm
c
c
á
á
c
c
phương
phương
th
th


c
c
v
v
à
à
thu

thu


c
c
t
t
í
í
nh
nh
c
c


n
n
thi
thi
ế
ế
t
t
C
C
ó
ó
th
th



thêm
thêm
s
s


ki
ki


n
n
Windows Application
Windows Application
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n
n
Quang Minh
Quang Minh
9

9
T
T
à
à
i li
i li


u tham kh
u tham kh


o
o
Professional C#, Second Edition
Professional C#, Second Edition


/> />

Đ
Đ


a ch
a ch


download t

download t
à
à
i li
i li


u
u
/> />-
-
day/tab.aspx
day/tab.aspx
Di
Di


n đ
n đ
à
à
n C# & .NET
n C# & .NET
/> />ory/hoc
ory/hoc
-
-
tap
tap
-

-
nghien
nghien
-
-
cuu/dot
cuu/dot
-
-
net/tab.aspx
net/tab.aspx
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
1
1
C# and .NET Framework

C# and .NET Framework
B
B
à
à
i 6:
i 6:
Data Access and Viewing
Data Access and Viewing
with .NET
with .NET
Đo
Đo
à
à
n Quang Minh
n Quang Minh


http
http
://www.VTPortal.net
://www.VTPortal.net
Last update:
Last update:
30. December 2006
30. December 2006
Data Access and Viewing with .NET
Data Access and Viewing with .NET



-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
2
2
M
M


c l
c l


c
c
ADO.NET Overview
ADO.NET Overview
Using Database Connections
Using Database Connections
Commands

Commands
Quick Data Access: The Data Reader
Quick Data Access: The Data Reader
Working with
Working with
DataSet
DataSet
Viewing .NET data
Viewing .NET data
Example
Example
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
3
3
ADO.NET Overview

ADO.NET Overview
ADO.NET l
ADO.NET l
à
à
g
g
ì
ì


ADO
ADO
-
-
Microsoft
Microsoft
's
's
ActiveX Data Objects: t
ActiveX Data Objects: t
hư vi
hư vi


n c
n c
á
á
c cho ph

c cho ph
é
é
p truy c
p truy c


p
p
v
v
à
à
x
x


lý CSDL.
lý CSDL.


ADO c
ADO c
ó
ó
m
m


t s

t s


h
h


n ch
n ch
ế
ế
: luôn luôn gi
: luôn luôn gi


k
k
ế
ế
t n
t n


i, ch
i, ch


l
l
à

à
m vi
m vi


c v
c v


i CSDL
i CSDL


ADO.NET: l
ADO.NET: l
à
à
m vi
m vi


c v
c v


i c
i c
á
á
c đ

c đ


i tư
i tư


ng d
ng d


li
li


u, h
u, h


tr
tr


m
m


nh m
nh m



SQL
SQL
Server,
Server,
đ
đ


ng th
ng th


i h
i h


tr
tr


c
c
á
á
c k
c k
ế
ế
t n

t n


i OLE DB.
i OLE DB.
namespace
namespace
System.Data
System.Data


Đ
Đ


truy
truy
c
c


p
p
v
v
à
à
x
x





CSDL,
CSDL,
s
s


d
d


ng
ng
c
c
á
á
c
c
namespace
namespace
System.Data
System.Data
,
,
System.Data.Common
System.Data.Common
,

,
System.Data.OleDb
System.Data.OleDb
,
,
System.Data.SqlClient
System.Data.SqlClient
,
,
System.Data.SqlTypes
System.Data.SqlTypes
.
.


C
C
á
á
c
c
l
l


p
p


b

b


n
n
trong
trong
System.Data
System.Data
:
:
DataSet
DataSet
,
,
DataTable
DataTable
,
,
DataRow
DataRow
,
,
DataColumn
DataColumn
,
,
DataRelation
DataRelation
, Constraint

, Constraint


C
C
á
á
c
c
l
l


p
p
đ
đ


c
c
bi
bi


t
t
:
:
SqlCommand

SqlCommand
,
,
OleDbCommand
OleDbCommand
,
,
SqlCommandBuilder
SqlCommandBuilder
,
,
OleDbCommandBuilder
OleDbCommandBuilder
,
,
SqlConnection
SqlConnection
,
,
OleDbConnection
OleDbConnection
,
,
SqlDataAdapter
SqlDataAdapter
,
,
OleDbDataAdapter
OleDbDataAdapter
,

,
SqlDataReader
SqlDataReader
,
,
OleDbDataReader
OleDbDataReader
,
,
SqlParameter
SqlParameter
,
,
OleDbParameter
OleDbParameter
,
,
SqlTransaction
SqlTransaction
,
,
OleDbTransaction
OleDbTransaction
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-



Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
4
4
Using Database Connections
Using Database Connections
Mu
Mu


n
n
truy
truy
v
v


n
n
CSDL,
CSDL,
ch

ch
ú
ú
ng
ng
ta
ta
ph
ph


i
i
c
c
ó
ó
m
m


t
t
k
k
ế
ế
t
t
n

n


i
i
đ
đ
ế
ế
n
n
CSDL
CSDL


S
S


d
d


ng
ng
l
l


p

p
SqlConnection
SqlConnection
,
,
OleDbConnection
OleDbConnection
Cung
Cung
c
c


p
p
chu
chu


i
i
k
k
ế
ế
t
t
n
n



i
i
:
:
thông
thông
thư
thư


ng
ng
bao
bao
g
g


m
m
tên
tên
server,
server,
tên
tên
CSDL,
CSDL,
tên

tên
truy
truy
c
c


p
p
,
,
m
m


t
t
kh
kh


u
u
.
.
S
S


d

d


ng
ng
c
c
á
á
c
c
phương
phương
th
th


c
c
Open()
Open()
v
v
à
à
Close().
Close().


S

S


d
d


ng
ng
k
k
ế
ế
t
t
n
n


i
i
hi
hi


u
u
qu
qu



Đ
Đ
ó
ó
ng
ng
ngay
ngay
k
k
ế
ế
t
t
n
n


i
i
khi
khi
không
không
d
d
ù
ù
ng

ng
n
n


a
a
:
:
thông
thông
thư
thư


ng
ng
,
,
ch
ch
ú
ú
ng
ng
ta
ta
không
không
duy

duy
tr
tr
ì
ì
m
m


t
t
k
k
ế
ế
t
t
n
n


i
i


c
c


ng

ng


đ
đ
ế
ế
n
n
CSDL.
CSDL.
Khi
Khi
c
c


n
n
truy
truy
v
v


n
n
,
,
ch

ch
ú
ú
ng
ng
ta
ta
m
m


k
k
ế
ế
t
t
n
n


i
i
,
,
truy
truy
v
v



n
n
xong
xong
,
,
đ
đ
ó
ó
ng
ng
ngay
ngay
k
k
ế
ế
t
t
n
n


i
i
l
l



i
i
.
.
Kh
Kh


i
i
l
l


nh
nh
k
k
ế
ế
t
t
n
n


i
i
nên

nên
đ
đ


t
t
trong
trong
kh
kh


i
i
try
try


catch
catch
T
T


kh
kh
ó
ó
a

a
using:
using:
s
s


d
d


ng
ng
m
m


t
t
đ
đ


i
i




ng

ng
. Ra
. Ra
kh
kh


i
i
ph
ph


m
m
vi
vi
c
c


a
a
using,
using,
đ
đ


i

i




ng
ng
s
s


b
b


hu
hu


.
.


Transactions
Transactions
Transactions
Transactions
l
l
à

à
g
g
ì
ì
?.
?.
S
S


d
d


ng
ng
thông
thông
qua
qua
SqlTransaction
SqlTransaction
ho
ho


c
c
OleDbTransaction

OleDbTransaction
.
.
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
5
5
Commands
Commands
L
L
à
à
đ
đ



i
i




ng
ng
th
th


c
c
thi
thi
câu
câu
l
l


nh
nh


M
M



t
t
đ
đ


i
i




ng
ng
command
command
thông
thông
thư
thư


ng
ng
đư
đư


c

c
s
s


d
d


ng
ng
đ
đ


th
th


c
c
thi
thi
m
m


t
t
câu

câu
l
l


nh
nh
SQL
SQL
ho
ho


c
c
m
m


t
t
th
th


t
t


c

c
lưu
lưu
.
.


C
C
á
á
c
c




c
c
th
th


c
c
hi
hi


n

n
:
:
Khai
Khai
b
b
á
á
o
o
v
v
à
à
m
m


m
m


t
t
connection.
connection.
Khai
Khai
b

b
á
á
o
o
m
m


t
t
chu
chu


i
i
ch
ch


a
a
câu
câu
l
l


nh

nh
SQL
SQL
ho
ho


c
c
tên
tên
th
th


t
t


c
c
lưu
lưu
Khai
Khai
b
b
á
á
o

o
m
m


t
t
đ
đ


i
i




ng
ng
command
command
v
v


i
i
câu
câu
l

l


nh
nh
truy
truy
v
v


n
n
v
v
à
à
ngu
ngu


n
n
k
k
ế
ế
t
t
n

n


i
i
.
.
Ch
Ch


đ
đ


nh
nh
thu
thu


c
c
t
t
í
í
nh
nh
câu

câu
truy
truy
v
v


n
n
:
:
d
d


ng
ng
text hay
text hay
th
th


t
t


c
c
lưu

lưu
.
.
Thêm
Thêm
c
c
á
á
c
c
tham
tham
s
s


c
c


a
a
câu
câu
truy
truy
v
v



n
n
.
.
Th
Th


c
c
hi
hi


n
n
l
l


nh
nh
truy
truy
v
v


n

n
:
:
tu
tu


theo
theo
yêu
yêu
c
c


u
u
th
th


c
c
hi
hi


n
n
c

c
á
á
c
c
l
l


nh
nh
kh
kh
á
á
c
c
nhau
nhau
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo

Đo
à
à
n Quang Minh
n Quang Minh
6
6
Commands
Commands
C
C
á
á
c
c
l
l


nh
nh
truy
truy
v
v


n
n
v

v


i
i
command.
command.


ExecuteNonQuery
ExecuteNonQuery
()
()
Th
Th


c
c
thi
thi
câu
câu
l
l


nh
nh
,

,
không
không
tr
tr


v
v


k
k
ế
ế
t
t
qu
qu


.
.
Thư
Thư


ng
ng
s

s


d
d


ng
ng
trong
trong
truy
truy
v
v


n
n
không
không
c
c


n
n
quan
quan
tâm

tâm
đ
đ
ế
ế
n
n
k
k
ế
ế
t
t
qu
qu


,
,
v
v
í
í
d
d


c
c
á

á
c
c
l
l


nh
nh
delete, insert, update
delete, insert, update




ExecuteReader
ExecuteReader
()
()
Tr
Tr


v
v


m
m



t
t
DataReader
DataReader
.
.
Thư
Thư


ng
ng
s
s


d
d


ng
ng
trong
trong
c
c
á
á
c

c
truy
truy
v
v


n
n
hi
hi


n
n
th
th


d
d


li
li


u
u
.

.


ExecuteScalar
ExecuteScalar
()
()
Tr
Tr


v
v


m
m


t
t
đ
đ


i
i





ng
ng
duy
duy
nh
nh


t
t
.
.
Thư
Thư


ng
ng
s
s


d
d


ng
ng
trong

trong
c
c
á
á
c
c
truy
truy
v
v


n
n
tr
tr


v
v


m
m


t
t
gi

gi
á
á
tr
tr


d
d


li
li


u
u
đơn
đơn
,
,
v
v
í
í
d
d


c

c
á
á
c
c
l
l


nh
nh
t
t
í
í
nh
nh
t
t


ng
ng
,
,
t
t
í
í
nh

nh
trung
trung
b
b
ì
ì
nh
nh
,
,
t
t
í
í
nh
nh
min/max
min/max




ExecuteXmlReader
ExecuteXmlReader
()
()
Tr
Tr



v
v


m
m


t
t
XmlReader
XmlReader
.
.
Thư
Thư


ng
ng
đư
đư


c
c
x
x



d
d


ng
ng
khi
khi
hi
hi


n
n
th
th


d
d


li
li


u
u





i
i
d
d


ng
ng
XML.
XML.
Nên
Nên
d
d
ù
ù
ng
ng
n
n
ế
ế
u
u
CSDL
CSDL
h

h


tr
tr


truy
truy
v
v


n
n
XML,
XML,
v
v
í
í
d
d


SQL Server 2000.
SQL Server 2000.
Data Access and Viewing with .NET
Data Access and Viewing with .NET



-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
7
7
Commands
Commands
public class
public class
ExecuteScalarExample
ExecuteScalarExample
{
{
public static void
public static void
Main(string
Main(string
[]
[]
args

args
)
)
{
{
string source = "server=(local)
string source = "server=(local)
\
\
\
\
NetSDK
NetSDK
;" +
;" +
"
"
uid
uid
=
=
QSUser;pwd
QSUser;pwd
=
=
QSPassword
QSPassword
;" + "database=
;" + "database=
Northwind

Northwind
";
";
string select = "SELECT COUNT(*) FROM Customers";
string select = "SELECT COUNT(*) FROM Customers";
SqlConnection
SqlConnection
conn
conn
= new
= new
SqlConnection(source
SqlConnection(source
);
);
conn.Open
conn.Open
();
();
SqlCommand
SqlCommand
cmd
cmd
= new
= new
SqlCommand(select
SqlCommand(select
,
,
conn

conn
);
);
object o =
object o =
cmd.ExecuteScalar
cmd.ExecuteScalar
();
();
Console.WriteLine
Console.WriteLine
( o ) ;
( o ) ;
}
}
}
}
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à

à
n Quang Minh
n Quang Minh
8
8
Quick Data Access: The Data Reader
Quick Data Access: The Data Reader
Data Reader
Data Reader


Ch
Ch


đư
đư


c
c
t
t


o
o
ra
ra
b

b


i
i
gi
gi
á
á
tr
tr


tr
tr


v
v


c
c


a
a
câu
câu
l

l


nh
nh
truy
truy
v
v


n
n
.
.


K
K
ế
ế
t
t
n
n


i
i
t

t


i
i
CSDL
CSDL
luôn
luôn
m
m


,
,
cho
cho
đ
đ
ế
ế
n
n
nh
nh


n
n
đư

đư


c
c
l
l


nh
nh
đ
đ
ó
ó
ng
ng
.
.
T
T
í
í
nh
nh
ch
ch


t

t


M
M


t
t
data reader
data reader
gi
gi


ng
ng
như
như
m
m


t
t
record set
record set
ch
ch



ti
ti
ế
ế
n
n
(forward only)
(forward only)
trong
trong
ADO.
ADO.
Ch
Ch


c
c
ó
ó
th
th


đ
đ


c

c
,
,
v
v
à
à
đi
đi
đ
đ
ế
ế
n
n
b
b


n
n
ghi
ghi
ti
ti
ế
ế
p
p
.

.
Không
Không
th
th


quay
quay
l
l


i
i
c
c
á
á
c
c
b
b


n
n
ghi
ghi
đã

đã
đ
đ


c
c
.
.


T
T


c
c
đ
đ


cao
cao
:
:
M
M


t

t
data reader
data reader
không
không
gi
gi


c
c
á
á
c
c
b
b


n
n
ghi
ghi
trong
trong
b
b


nh

nh


.
.
Data reader
Data reader
ch
ch


c
c
ó
ó
nhi
nhi


m
m
v
v


l
l


y

y
d
d


li
li


u
u
t
t


CSDL
CSDL
v
v
à
à
chuy
chuy


n
n
v
v



.
.
R
R


t
t
hay
hay
đư
đư


c
c
s
s


d
d


ng
ng
khi
khi
ch

ch


c
c


n
n
hi
hi


n
n
th
th


d
d


li
li


u
u
,

,
nh
nh


t
t
l
l
à
à
trong
trong
môi
môi
trư
trư


ng
ng
web.
web.
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-



Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
9
9
Working with
Working with
DataSet
DataSet
DataSet
DataSet
:
:


C
C
ó
ó
t
t
á
á
c

c
d
d


ng
ng
gi
gi


ng
ng
như
như
m
m


t
t
CSDL offline:
CSDL offline:
Trong
Trong
m
m


t

t
DataSet
DataSet
c
c
ó
ó
th
th


ch
ch


a
a
c
c
á
á
c
c
DataTable
DataTable
,
,
DataRelation
DataRelation
,

,


DataSet
DataSet
c
c
ó
ó
th
th


đư
đư


c
c
xây
xây
d
d


ng
ng
không
không
ch

ch


t
t


c
c
á
á
c
c
truy
truy
v
v


n
n
CSDL,
CSDL,
m
m
à
à
c
c
ó

ó
th
th


t
t


c
c
á
á
c
c
t
t


p
p
tin
tin
kh
kh
á
á
c
c
(text,

(text,
Excel, CVS,
Excel, CVS,


)
)


Đ
Đ


t
t


o
o
DataSet
DataSet
Truy
Truy
v
v


n
n
CSDL,

CSDL,
d
d


a
a
trên
trên
m
m


t
t
DataAdapter
DataAdapter
Xây
Xây
d
d


ng
ng
b
b


ng

ng
c
c
á
á
ch
ch
thêm
thêm
c
c
á
á
c
c
DataTable
DataTable
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à

à
n Quang Minh
n Quang Minh
10
10
Working with
Working with
DataSet
DataSet
Truy
Truy
v
v


n
n
CSDL
CSDL


M
M


m
m


t

t
connection.
connection.


T
T


o
o
m
m


t
t
DataAdapter
DataAdapter
,
,
ch
ch


đ
đ


nh

nh
câu
câu
l
l


nh
nh
truy
truy
v
v


n
n
cho
cho
data
data
adapter.
adapter.


T
T


o

o
m
m


i
i
m
m


t
t
data set.
data set.


S
S


d
d


ng
ng
phương
phương
th

th


c
c
Fill()
Fill()
c
c


a
a
data adapter.
data adapter.
Xây
Xây
d
d


ng
ng
b
b


ng
ng
c

c
á
á
ch
ch
thêm
thêm
c
c
á
á
c
c
data table
data table


T
T


o
o
m
m


i
i
m

m


t
t
DataSet
DataSet
.
.


T
T


o
o
m
m


i
i
c
c
á
á
c
c
DataTable

DataTable
.
.
Kh
Kh


i
i
t
t


o
o
data table
data table
b
b


ng
ng
c
c
á
á
ch
ch
thêm

thêm
m
m


i
i
DataColumn
DataColumn
Thêm
Thêm
c
c
á
á
c
c
dòng
dòng
d
d


li
li


u
u
v

v
à
à
o
o
data table.
data table.


Add
Add
c
c
á
á
c
c
data table
data table
v
v
à
à
o
o
data set
data set
b
b



ng
ng
c
c
á
á
ch
ch
thêm
thêm
v
v
à
à
o
o
thu
thu


c
c
t
t
í
í
nh
nh
Tables

Tables
c
c


a
a
data set
data set
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
11
11
Working with
Working with
DataSet

DataSet


Example
Example
DataSet
DataSet
ds
ds
= new
= new
DataSet
DataSet
();
();
DataTable
DataTable
dt
dt
=
=
ds.Tables.Add("SampleData
ds.Tables.Add("SampleData
");
");
dt.Columns.Add("MonHocID
dt.Columns.Add("MonHocID
",
",
typeof(Guid

typeof(Guid
));
));
dt.Columns.Add("TenMon
dt.Columns.Add("TenMon
",
",
typeof(string
typeof(string
));
));
dt.Columns.Add("MaMon
dt.Columns.Add("MaMon
",
",
typeof(string
typeof(string
));
));
dt.Columns.Add(
dt.Columns.Add(


HeSoMon
HeSoMon
",
",
typeof(int
typeof(int
));

));
DataRow
DataRow
dr
dr
;
;
for (
for (
int
int
i = 1; i <= 20; i++)
i = 1; i <= 20; i++)
{
{
dr
dr
=
=
dt.NewRow
dt.NewRow
();
();
dr["MonHocID
dr["MonHocID
"] =
"] =
Guid.NewGuid
Guid.NewGuid
();

();
dr["TenMon
dr["TenMon
"] = "Mon hoc
"] = "Mon hoc
thu
thu
" +
" +
i.ToString
i.ToString
();
();
dr["MaMon
dr["MaMon
"] = "MaMon00" +
"] = "MaMon00" +
i.ToString
i.ToString
();
();
dr["HeSoMon
dr["HeSoMon
"] = i;
"] = i;
dt.Rows.Add(dr
dt.Rows.Add(dr
);
);
}

}
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
12
12
Working with
Working with
DataSet
DataSet


Example
Example
SqlConnection
SqlConnection
conn

conn
= new
= new
SqlConnection(source
SqlConnection(source
);
);
SqlCommand
SqlCommand
cmd
cmd
= new
= new
SqlCommand(select
SqlCommand(select
,
,
conn
conn
);
);
SqlDataAdapter
SqlDataAdapter
adapter = new
adapter = new
SqlDataAdapter
SqlDataAdapter
();
();
adapter.SelectCommand

adapter.SelectCommand
=
=
cmd
cmd
;
;
DataSet
DataSet
data = new
data = new
DataSet
DataSet
();
();
try
try
{
{
conn.Open
conn.Open
();
();
adapter.Fill(data
adapter.Fill(data
);
);
}
}
catch (

catch (
SqlException
SqlException
expSQL
expSQL
)
)
{
{
}
}
finally
finally
{
{
conn.Close
conn.Close
();
();
}
}
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:

Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
13
13
Working with
Working with
DataSet
DataSet
Sau
Sau
khi
khi
xây
xây
d
d


ng
ng
,
,
đi
đi



n
n
thông
thông
tin
tin
v
v
à
à
o
o
data
data
set,
set,
c
c
ó
ó
th
th


thay
thay
đ
đ



i
i
d
d


li
li


u
u
(insert, delete,
(insert, delete,
update)
update)
v
v
à
à
c
c


p
p
nh
nh



t
t
tr
tr


l
l


i
i
v
v
à
à
o
o
CSDL.
CSDL.


Thu
Thu


c
c
t

t
í
í
nh
nh
Rows
Rows
c
c


a
a
DataTable
DataTable
l
l
à
à
m
m


t
t
collection.
collection.
Thêm
Thêm
(insert)

(insert)
m
m


t
t
row
row
m
m


i
i
b
b


ng
ng
phương
phương
th
th


c
c
Add()

Add()
C
C


p
p
nh
nh


t
t
(update)
(update)
m
m


t
t
row
row
c
c
ũ
ũ
b
b



ng
ng
c
c
á
á
ch
ch
thay
thay
đ
đ


i
i
c
c
á
á
c
c
gi
gi
á
á
tr
tr



c
c


a
a
row
row
Xo
Xo
á
á
(delete)
(delete)
m
m


t
t
row
row
b
b


ng
ng
phương

phương
th
th


c
c
Delete()
Delete()
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
14
14
Viewing .NET data
Viewing .NET data
Song

Song
song
song
v
v


i
i
vi
vi


c
c
x
x




d
d


li
li


u

u
l
l
à
à
hi
hi


n
n
th
th


d
d


li
li


u
u
:
:


.NET

.NET
cung
cung
c
c


p
p
c
c
á
á
c
c
control
control
r
r


t
t
hi
hi


u
u
qu

qu


cho
cho
vi
vi


c
c
hi
hi


n
n
th
th


d
d


li
li


u

u
.
.


Vi
Vi


c
c
hi
hi


n
n
th
th


d
d


li
li


u

u
trên
trên
c
c
á
á
c
c
control
control
n
n
à
à
y
y
ch
ch


đơn
đơn
gi
gi


n
n
b

b


ng
ng
c
c
á
á
ch
ch
ch
ch


ra
ra
ngu
ngu


n
n
d
d


li
li



u
u
,
,
g
g


i
i
phương
phương
th
th


c
c
DataBind
DataBind
()
()


C
C
á
á
c

c
đ
đ


i
i




ng
ng
hi
hi


n
n
th
th


d
d


li
li



u
u
bao
bao
g
g


m
m
:
:
DataGrid
DataGrid
,
,
DataList
DataList
,
,
Repeter
Repeter
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-



Editor:
Editor:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
15
15
Viewing .NET data
Viewing .NET data
DataGrid
DataGrid
(ASP.NET)
(ASP.NET)


Cho
Cho
ph
ph
é
é
p
p
hi
hi



n
n
th
th


d
d


li
li


u
u




i
i
d
d


ng
ng
b

b


ng
ng
.
.


Cho
Cho
ph
ph
é
é
p
p
phân
phân
trang
trang
v
v
à
à
s
s


p

p
x
x
ế
ế
p
p
d
d


li
li


u
u
.
.
Hi
Hi


n
n
th
th


d

d


li
li


u
u


Thi
Thi
ế
ế
t
t
k
k
ế
ế
form:
form:
Thêm
Thêm
m
m


t

t
DataGrid
DataGrid
.
.
Thay
Thay
đ
đ


i
i
c
c
á
á
c
c
thu
thu


c
c
t
t
í
í
nh

nh
c
c


n
n
thi
thi
ế
ế
t
t
.
.


Thu
Thu


c
c
t
t
í
í
nh
nh
quan

quan
tr
tr


ng
ng
:
:
DataKeyField
DataKeyField
:
:
kho
kho
á
á
ch
ch
í
í
nh
nh
c
c


a
a





i
i
,
,
thông
thông
thư
thư


ng
ng
l
l
à
à
kho
kho
á
á
ch
ch
í
í
nh
nh
trong

trong
b
b


ng
ng
d
d


li
li


u
u
.
.
DataMember
DataMember
:
:
b
b


ng
ng
d

d


li
li


u
u
(
(
trong
trong
DataSet
DataSet
)
)
c
c


n
n
hi
hi


n
n
th

th


.
.
DataSource
DataSource
:
:
ngu
ngu


n
n
d
d


li
li


u
u
c
c


n

n
hi
hi


n
n
th
th


AutoGenerateColumns
AutoGenerateColumns
:
:
n
n
ế
ế
u
u
b
b


ng
ng
true,
true,
c

c
á
á
c
c
c
c


t
t
c
c


a
a
grid
grid
s
s


t
t


đ
đ



ng
ng
sinh
sinh
theo
theo
c
c
á
á
c
c
(
(
tên
tên
)
)
trư
trư


ng
ng
d
d


li

li


u
u
trong
trong
b
b


ng
ng
.
.
Data Access and Viewing with .NET
Data Access and Viewing with .NET


-
-


Editor:
Editor:
Đo
Đo
à
à
n Quang Minh

n Quang Minh
16
16
Viewing .NET data
Viewing .NET data
DataGrid
DataGrid
(ASP.NET)
(ASP.NET)


C
C


t
t
trong
trong
grid:
grid:
cho
cho
ph
ph
é
é
p
p
hi

hi


n
n
th
th


theo
theo
nhi
nhi


u
u
khuôn
khuôn
d
d


ng
ng
kh
kh
á
á
c

c
nhau
nhau
:
:
Bound Column:
Bound Column:
ch
ch


hi
hi


n
n
th
th


d
d


li
li


u

u
d
d


ng
ng
text
text
Button Column:
Button Column:
cho
cho
ph
ph
é
é
p
p
th
th


c
c
thi
thi
l
l



nh
nh
(
(
xo
xo
á
á
,
,
so
so


n
n
th
th


o
o
,
,


)
)
HyperLink

HyperLink
Column:
Column:
siêu
siêu
liên
liên
k
k
ế
ế
t
t
TemplateColumn
TemplateColumn
:
:
m
m


u
u
,
,
ch
ch


a

a


t
t


c
c


a
a
c
c


t
t


V
V


i
i
c
c



t
t
l
l
à
à
button column
button column
Như
Như
l
l
à
à
m
m


t
t
n
n
ú
ú
t
t
l
l



nh
nh
b
b
ì
ì
nh
nh
thư
thư


ng
ng
Thông
Thông
thư
thư


ng
ng
,
,
c
c


n

n
x
x




dòng
dòng
d
d


li
li


u
u
đư
đư


c
c
click,
click,
dòng
dòng
n

n
à
à
y
y
s
s


đư
đư


c
c
x
x
á
á
c
c
đ
đ


nh
nh
d
d



a
a
trên
trên
kho
kho
á
á
c
c


a
a




i
i

×