Ể Ứ
Ụ
Môn: PHÁT TRI N NG D NG
ướ
ố ượ
ng đ i t
ỗ ợ ng h tr xây
ậ ầ Ph n: L p trình h ụ ự ứ d ng ng d ng (review)
ng
ướ ố ượ
ộ N i dung ậ 1. L p trình h 1.1. Đ i t
ố ượ ng đ i t ớ ng, l p
ừ ế ừ ượ 1.2. Th a k , đa hình, tr u t ng hóa
ậ ệ 2. L p trình giao di n ữ ậ ư 3. L u tr t p tin 3.1. Binary File
3.2. Serialization
ầ
ự ứ
ỗ ợ
ng h tr xây d ng ng
2
3.3. XML File
ố ượ ướ ậ Ph n: L p trình h ng đ i t ơ ở ữ ệ 4. L p trình c s d li u
ụ
d ng (review)
ậ
4.1. SQL (DDL, DML)
ố ượ ấ ơ ở ữ ệ 4.2. Các đ i t ng truy v n c s d li u
ớ ơ 4.2. Thao tác insert, update, delete, select v i c
ở ữ ệ s d li u
ậ
ướ
ng
ng đ i t
ủ ự ạ ộ ố ượ ng
ố ượ 1. L p trình h o OOP – Object Oriented Programming. o Ch
(cid:0) ự
ộ
nhiên. ự ệ ng th c thi m t ho t đ ng t c là đ i ự ng th c hi n m t ứ ạ ộ ố ượ ộ hành vi mà đ i t ố ng này
ầ
ệ ươ ng trình là s ho t đ ng c a các đ i t ố Gi ng t ố ượ o Đ i t ượ t ả có kh năng. ộ o M t ch ố ượ đ i t
ố ượ
ướ
ầ
ộ ậ ự ng trình là m t tr t t ủ ế ệ
ụ
d ng (review)
ậ ự o Đóng gói d li u nên h n ch vi c truy c p t ướ ậ 3 Ph n: L p trình h ờ ươ các l i yêu c u . ng th c hi n hành vi c a mình ạ ng đ i t ỗ ợ ự ữ ệ do (private trong h ng đ i t ỉ ố ượ ng, ch các ự ứ ng h tr xây d ng ng
ươ ộ ớ ậ ượ ứ ớ ph ng th c thu c l p m i truy c p đ c) làm
o
ể ượ ậ ữ ệ ệ ậ không ki m soát đ c vi c c p nh t d li u
ử ụ ạ ế ệ ạ ồ ế ạ S d ng l i mã ngu n, h n ch vi c vi t l i
mã ngu nồ
ướ
ng (tt)
ộ ớ
ố ượ ng đ i t ữ ệ ng (object): d li u + hành vi. ng ph i thu c m t l p (class).
ượ ễ ễ ở ộ ng đ c bi u di n b i
ế ộ data (bi n, thu c tính) + methods
ậ 1. L p trình h ố ượ o Đ i t ả ố ượ o Đ i t ố ượ ộ o M t nhóm đ i t ớ L p(class) o L p= ớ (code).
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
4
ụ
d ng (review)
ậ
ướ
ố ượ
1. L p trình h
ng đ i t
ng (tt)
o
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
5
ụ
d ng (review)
ng đ i t
1. L p trình h
o
ố ượ ố ượ ng đ i t
ng (tt) ng
ướ ế ậ ướ ng pháp ti p c n h ấ
ặ
ng (Abtraction) ấ
ậ ươ Ph ư Đ c tr ng (tính ch t) ừ ượ o Tr u t o Đóng gói/Che d u thông tin (Encapsulation
ừ ế
ố ượ
ự ứ
ng h tr xây d ng ng
ng đ i t
6
ụ
ướ ổ ấ
ỗ ợ ữ ệ
Information hiding) o Th a k (Inheritance) o Đa hình (Polymophism)
d ng (review)
ầ Ư ể u đi m ậ ầ Ph n: L p trình h o Khi thay đ i c u trúc d li u thì không c n thay
ồ ủ ố ượ ổ đ i mã ngu n c a đ i t ng khác
o Có th s d ng l
ể ử ụ ạ ồ ế ệ i mã ngu n, ti t ki m tài
o
nguyên
ế ậ ự ầ ợ ớ PP ti p c n HĐT phù h p v i các d án ph n
ứ ạ ề ớ m m l n, ph c t p
ướ
ố ượ
ng đ i t
ng (tt)
Program
ậ 1. L p trình h ả o Gi
i bài toán theo OOP
properties
pick nouns
Problem
Bao gói dữ liệu và hành vi thành class
class XX { type1 prop1; type2 prop2; ....... type Method1(...) { } ..... };
pick verbs
Operation (function, method, behavior)
void main() { X x; // object variable x.Method(...); };
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
7
ụ
d ng (review)
ng đ i t
ng (tt)
ố ượ ữ ệ ng theo d li u
ướ ố ượ ng hoá đ i t
ậ 1. L p trình h ừ ượ o Tr u t (Abstraction)
o K th a (Inheritance) o Đóng gói (Encapsulation) o Đa hình (Polymorphism)
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
8
ụ
d ng (review)
ế ừ
ậ
ệ
t k giao di n ả ễ ọ ầ
ề ườ i dùng có th nhanh chóng b t
ệ ử ụ
ệ 2. L p trình giao di n ế ế ắ ơ ả Nguyên t c c b n trong thi ử ễ ọ : Ph n m m c n ph i d h c cách s ầ o D h c ắ ụ d ng, do đó ng ầ đ u làm vi c s d ng ph n m m đó
ể ề ầ i s d ng ệ ộ ớ ậ ườ ử ụ : Giao di n nên o Quen thu c v i ng ữ kinh
o
ữ ệ ừ ệ ố ườ ẽ i s dùng h th ng
ấ
ự ứ
ướ
ầ
ng đ i t
ụ
d ng (review)
ể ượ : giao di n c n nh t quán sao ầ c ố ượ 9 ng h tr xây d ng ng
ậ Ph n: L p trình h ạ
ệ ầ ố ỗ ợ ể dùng các thu t ng và khái ni m rút ra t ủ ệ nghi m c a nh ng ng ấ ề nhi u nh t ấ Tính nh t quán cho các thao tác g n gi ng nhau có th đ kích ho t theo cùng ki u.
o Ng c nhiên t
ạ ố ườ i thi u i dùng không bao ể : Ng
ờ ị ấ ủ ệ ố ờ ề gi b b t ng v hành vi c a h th ng
ậ
ườ ụ ạ ệ t k giao di n (tt) ơ ế ụ ượ : Giao di n nên có các c ch ạ i tình tr ng
ng sau khi g p l
o Ng
ự ứ
ỗ ợ
ầ
ả ệ
ệ 2. L p trình giao di n (tt) ế ế ắ ơ ả Nguyên t c c b n trong thi ệ c o Khôi ph c đ i dùng khôi ph c l cho phép ng ườ ạ ộ ặ ỗ ho t đ ng bình th i ườ ẫ ướ ệ i dùng o H ng d n ng : Giao di n nên có ph n ấ ỗ ả ồ h i có nghĩa khi x y ra l i và cung c p các ti n ữ ả ợ ích tr giúp theo ng c nh ườ ấ ệ ạ : Giao di n nên cung c p i dùng đa d ng ươ ệ ạ ợ các ti n ích t ng tác thích h p cho các lo i ườ ệ ố i dùng h th ng khác nhau ng ố ượ ướ ậ Ph n: L p trình h
ng h tr xây d ng ng
ng đ i t
10
ụ
d ng (review)
ệ ổ ế
ậ ể ươ
ọ ự ằ ề
ệ
ữ ự
ệ 2. L p trình giao di n (tt) ng tác ph bi n trên giao di n: Các ki u t ự ế o Thao tác tr c ti p – Direct manipulation o Ch n l a b ng menu – Menu selection o Đi n form – Form fillin o Dòng l nh – Command language o Ngôn ng t
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
11
ụ
d ng (review)
nhiên – Natural language
ạ
ử ụ
ộ
ệ
ệ ậ 2. L p trình giao di n (tt) ụ ạ Các lo i màn hình cho ng d ng Lo i màn hình Màn hình chính
ố
ệ
ệ ư
ậ ữ ệ Màn hình nh p d li u
ữ
ượ
ấ
ậ
ự
ệ
ệ
ọ i s d ng ch n công vi c ự ự i s d ng th c hi n l u c phát sinh. ườ ử ụ i s d ng cung c p các ế t cho vi c th c hi n
N i dung màn hình Danh sách các công vi c.ệ Các thông tin c n ầ ữ ượ ư c l u tr . đ Các thông tin ph i ả cung c p.ấ
ệ ử Màn hình nh p li u x lý
ệ
ườ ử ụ
ả ủ
ả
ế i s d ng k t qu c a
ả ế Các k t qu .
Màn hình k t quế
ộ ể ộ
ắ
Các thông báo.
Màn hình thông báo
ở ườ ử ụ i s d ng ộ
ự
ệ
ượ
ế
c
Các tiêu chí tra c u.ứ
Màn hình tra c uứ
ữ
ứ
ụ
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
12
ụ
d ng (review)
ứ Ý nghĩa s d ng ườ ử ụ Cho phép ng mong mu n th c hi n. ườ ử ụ Cho phép ng tr các thông tin đ Cho phép ng ầ thông tin c n thi m t công vi c nào đó. ị Hi n th cho ng ệ m t công vi c nào đó. Thông báo, nh c nh ng ệ trong quá trình th c hi n m t công vi c nào đó. Cho phép tìm ki m các thông tin đã đ ư l u tr trong ng d ng.
ậ
ệ
ệ ụ
2. L p trình giao di n (tt) o Tính ti n d ng
n Màn hình tr c quan (giao di n đ h a)
ồ ọ ệ
ừ ự ế th c t
i s d ng ạ ự ưở ấ o L y ý t ng t n Thân thi n, t ự ệ nhiên ừ ự ế ưở ấ o L y ý t th c t ng t ữ ủ o Dùng ngôn ng c a ng ượ o Không đ ườ ử ụ c làm NSD ng c nhiên
ố ượ
ự ứ
ướ
ầ
ng h tr xây d ng ng
ễ ấ
ậ Ph n: L p trình h
ụ
d ng (review)
n D dàng truy xu t qua các màn hình khác n Nên gói g n 1 công vi c trong 1 màn hình ệ ỗ ợ 13 (không cho màn hình trôi, không qua nhi u ề
ọ ng đ i t
màn hình).
n Không nhúng 2 công vi c trên 1 màn hình
ệ
ậ
ệ
2. L p trình giao di n (tt) ả ệ o Tính hi u qu : n T c đ : ố ộ
o
ả
ỗ ợ ằ ẵ
Ít thao tác, n u có thao tác ph i nhanh. ị ị ể ượ ng. ườ ử ụ i s d ng:
ế o H tr b ng giá tr đ nh s n. ắ t, bi u t o Phím t n H n ch l ế ỗ ạ i cho ng ạ ơ ộ i s d ng làm
ườ ử ụ o Không t o c h i cho ng ở ắ sai (s d ng list box, nh c nh , …)
ố ượ
ự ứ
ầ
ng h tr xây d ng ng
14
ậ Ph n: L p trình h
ụ
d ng (review)
i (undo). ỗ ợ ử ụ n C h i s a l ơ ộ ử ỗ ướ ng đ i t
ậ
ệ
n Nh ng thành ph n trên màn hình có ý nghĩa ố
ố ượ
ầ
ự ứ
ề ặ ầ ả thì ph i gi ng nhau v m t
ng h tr xây d ng ng
15
ụ
ỗ ợ ắ
ướ ắ
ỹ o Tính m thu t: ậ Ph n: L p trình h
d ng (review)
ắ
2. L p trình giao di n (tt) ấ o Tính nh t quán: ữ ự ươ ng t t ị o V trí, o Ngôn ng , ữ o Hình dáng, ắ o Màu s c và o Cách kích ho t.ạ ậ ng đ i t n Màu s c hài hòa, b t m t
n B c c g n gàng, h p lý.
ố ụ ọ ợ
ậ
ệ
2. L p trình giao di n (tt) L u ýư
o
ứ ệ ọ t:ắ Phím nóng và phím t n Ch n công vi c thông qua các phím ch c
o Menu
năng trên bàn phím. n Phím nóng (Alt + ?) n Phím t ắ t (Ctrl + ?)
n Các công vi c có cùng ý nghĩa s d ng đ
ệ ượ c
ầ
ng h tr xây d ng ng
16
ừ ố ượ ạ ướ nhóm l ậ Ph n: L p trình h
n Đây là d ng trình bày thông d ng nh t. ấ
ụ
d ng (review)
ử ụ i theo t ng nhóm ch c năng. ỗ ợ ng đ i t ạ ứ ự ứ ụ
o Bi u t
ể ượ ng
n Ch n công vi c thông qua 1 bi u t
ể ượ ệ ọ ự ng tr c
quan.
ậ 2. L p trình giao di n (tt) Ví d menu h
o
o
o
ệ ố
o
ậ
o
ụ ậ ế
o
ử
ế ể ấ
ệ ứ ướ ụ ng ch c năng ổ ứ ch c) H th ng (t ổ ứ ch c) Danh m c (t ữ ư C p nh t (L u tr ) ứ Tìm ki m (Tra c u) X lý (Tính toán) Báo bi u (K t xu t)
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
17
ụ
d ng (review)
o
ệ ng ươ ứ
ậ 2. L p trình giao di n (tt) ng đ i t Ví d menu h ứ
o
ớ ớ ố ng ng v i các l p đ i
ứ
ng
ứ
ữ
ấ
L u tr , Tra c u, Tính toán, K t xu t)
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
18
ụ
d ng (review)
ỗ ế ớ ế ệ ư ố ượ ướ ụ Các nhóm ch c năng t ngượ t ứ Các ch c năng bên trong m i nhóm ch c năng ố ượ là các công vi c liên quan đ n l p đ i t ươ ứ t ng ng (
ứ
ủ ng nghi p v : Các nhóm ch c năng ế ớ ạ ộ i
ệ ậ 2. L p trình giao di n (tt) ệ ụ ướ ụ Ví d menu h ạ ớ ươ ứ ng ng v i các giai đo n ho t đ ng c a th gi t th c:ự
o
ị ơ ấ ổ ứ ch c, ban hành các
o
ạ ộ ậ ạ ế o K ho ch: L p các k ho ch cho các ho t đ ng
ầ ế t
ự ứ
ỗ ợ
ướ
ầ
ng đ i t
19
ậ ạ ộ ổ ứ T ch c: Xác đ nh c c u t qui đ nhị ạ ế ắ ớ s p t i ậ ế ế Ti p nh n: Ti p nh n các thông tin c n thi cho ho t đ ng
ụ
d ng (review)
ậ ố ượ ng h tr xây d ng ng ở ạ ộ o Ho t đ ng: Ghi nh n các thông tin phát sinh b i ậ Ph n: L p trình h
o
ạ ộ ho t đ ng
ế ế ậ ổ ổ T ng k t: Tính toán và l p các báo cáo t ng k t
ệ
ế ế
ữ
ể i s d ng: tìm hi u nh ng gì ớ ệ ố i s d ng s làm v i h th ng.
ộ ậ ự
ậ 2. L p trình giao di n (tt) t k UI Quy trình thi ườ ử ụ o Phân tích ng ẽ ườ ử ụ ng ử ệ ố ẫ ậ o L p m u th h th ng: xây d ng m t t p các ệ ử ể ử ẫ m u th đ th nghi m ử
o Đánh giá giao di n: th nghi m các m u th cùng
ử ệ ẫ
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
20
ụ
d ng (review)
ệ ườ ử ụ i s d ng. ớ v i ng
ư
ữ ậ
̃ ́ ̣ ̣
3. L u tr t p tin o Tâp tin (file) trên đi a th
̀ ươ ng chia ra ca c loai
́ chi nh:
o Văn ban: l u thông tin theo dang chuô i ky t
́ ̃ ư ̉ ̣ ự
̃ ̣
o Nhi phân: thông tin l u d
̣ ̣
ể ư ̣ ng
̃ ́ ́ ̀ theo ma quy đinh (ISO88591/ASCII, unicode). ư ướ ̀ ữ ệ ̃ i dang chuô i byte ữ ươ ữ ệ ̣
o Câ u tru c/mâ u tin: thông tin l u theo khô i có
nhi phân (binary). Du ng đ l u tr ch ̃ tri nh ma ma y, d li u dang ne n, d li u ma ́ hoa , ... ́ ́ ́ ̃ ư
ố ượ
ầ
ự ứ
ỗ ợ
ng h tr xây d ng ng
21
ụ
d ng (review)
́ ấ c u tru c giô ng nhau ướ ậ Ph n: L p trình h ́ ng đ i t
o Đinh dang phâ n mê m chuyên dung: thông tin
̀ ̀ ̣ ̣ ̣
̃ ̀ ̀ ̃ ́ ượ ̣ đ c ma hoa do ha ng phâ n mê m quy đinh.
́ ̀ ̣ ượ ự ệ ả Muô n đoc đ c thông tin, câ n th c hi n gi i
̃ ̀ ̃ ̀ ́ ả ươ ả ừ ma (chi a khoa gi i ma th ng ph i mua t
̀ ̀ ̃ ha ng phâ n mê m).
n L u tr theo d ng XML (eXtensible Markup
ư ữ ạ
Language)
ư
ọ ộ ủ
ườ
ế ữ ệ ế ệ ả ủ
ệ ệ ế ế
ữ ậ 3. L u tr t p tin (tt) ầ o Nhu c u ghi/đ c n i dung c a các bi n d li u ố ơ ng r i vào 3 tình hu ng chính y u sau đây : th ể ư ế 1. L u k t qu c a phiên làm vi c hi n hành đ ạ dùng l
i cho phiên làm vi c k ti p.
ề ữ ệ ậ ấ ề ầ 2. Nh p r t nhi u d li u cho ph n m m.
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
22
ụ
d ng (review)
ề ữ ệ ấ ấ ườ Xu t r t nhi u d li u cho ng i dùng.
ữ ệ
ư ấ
ủ
ươ
ự ị ộ ọ ỗ ọ các byte do ch ỗ ọ o Ghi/đ c chu i ký t
ừ
ữ ậ 3. L u tr t p tin (tt) ổ ế Các c p đ đ c/ghi d li u ph bi n ữ ừ o Ghi/đ c chu i byte thô ra/t file, ng nghĩa c a ị ự qui đ nh. ng trình t theo cách mã hóa xác đ nh file.
(ASCII, UTF8, UCS2,...) ra/t
ộ ữ ệ ể ơ ả
ọ ư ị ừ
ạ ị
ự ứ
ỗ ợ
ầ
o Ghi/đ c các d li u thu c các ki u c b n đ nh ẵ s n nh bool, byte, int, double, String,... ra/t ố file theo d ng nh phân, là d ng mã hóa g c bên trong ch o Ghi/đ c đ i t ậ Ph n: L p trình h
ụ
d ng (review)
ạ ươ ng trình. ố ượ ọ ố ượ ướ ng đ i t ố ượ ượ ng đ ng h tr xây d ng ng ng và các đ i t c tham 23
ở ố ượ ự ế ế ả ố kh o tr c ti p hay gián ti p b i đ i t ng g c
ừ ị ra/t file nh phân hay file XML.
ậ
ơ ở ữ ệ
ữ ị
4. L p trình c s d li u o Ngôn ng đ nh nghĩa d li u (
ố ữ ệ Data Definition ấ Language DDL): cho phép khai báo c u trúc ộ ệ ả b ng, các m i quan h và các ràng bu c.
ữ o Ngôn ng thao tác d li u (
ữ ệ Data Manipulation Language DML): cho phép thêm, xóa, s a d ̃ ử ư li u.ệ
o Ngôn ng truy v n d li u (
ữ
ố ượ
ự ứ
ỗ ợ
ướ
ầ
ấ ữ ệ
ng h tr xây d ng ng
ậ Ph n: L p trình h
ng đ i t
ụ
d ng (review)
ấ ữ ệ Structured Query Language – SQL): cho phép truy v n d li u. 24
o Ngôn ng đi u khi n d li u (
ữ ề ể ữ ệ Data Control
ả ậ Language – DCL): khai báo b o m t thông tin,
̀ ̀ ̀ ́ ̀ ơ câ p quyê n va thu hô i quyê n khai thác trên c
̃ ở ư ̣ s d liêu.
ậ
ơ ở ữ ệ
o
ệ
ữ ị ả ̣
4. L p trình c s d li u (tt) ữ ệ Ngôn ng đ nh nghĩa d li u L nh tao b ng (CREATE)
o
ệ
ử
ả
L nh s a câ u trúc b ng (ALTER) n
ộ
n
ể ữ ệ ủ
ử
ộ
́ Thêm thu c tính S a ki u d li u c a thu c tính
ộ
n Xoá thu c tính n ộ
Thêm ràng bu c toàn v n ộ
ẹ n Xoá ràng bu c toàn v n ẹ
o
ệ
ầ
ự ứ
ỗ ợ
ả L nh xóa b ng (DROP) ố ượ ướ ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
25
ụ
d ng (review)
ậ
ơ ở ữ ệ
ữ ệ
ữ ị ả ạ
4. L p trình c s d li u (tt) Ngôn ng đ nh nghĩa d li u (tt) o T o b ng:
ộ ộ ữ ệ ữ ệ ể ể
ạ
CREATE TABLE
26
ụ
d ng (review)
o Thêm thu c tính vào b ng (đã t o) ạ ự ứ ậ Ph n: L p trình h ng đ i t ộ
ố ượ ng h tr xây d ng ng ả
ộ ướ
ể ữ ệ ả ỗ ợ ầ ALTER TABLE tênb ng ADD tênc t ki ud li u
o S a ki u d li u thu c tính (không ph i ki u
ể ữ ệ ử ể ả ộ
ử ượ ALTER TABLE tênb ng ả nào cũng s a đ c)
ể ữ ệ ớ ộ ALTER COLUMN tênc t ki ud li u_m i
ậ
ơ ở ữ ệ
ữ ệ
4. L p trình c s d li u (tt) ữ ị Ngôn ng đ nh nghĩa d li u (tt) o Xóa thu c tính ộ
UNIQUE tên_c tộ
o Thêm ràng bu c toàn v n ẹ PRIMARY KEY (tên_c t)ộ
ả
ả ALTER TABLE tên_b ng DROP COLUMN tên_c tộ
ộ
FOREIGN KEY (tên_c t) ộ REFERENCES tên_b ng ả (c t_là_khóa_chính) [ON DELETE CASCADE] [ON UPDATE CASCADE]
ề
ệ
ộ
CHECK (tên_c t đi u_ki n)
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
27
ụ
d ng (review)
ộ
ALTER TABLE
ậ
ơ ở ữ ệ
ữ ị
4. L p trình c s d li u (tt) ữ ệ Ngôn ng đ nh nghĩa d li u (tt) ẹ ộ o Xóa ràng bu c toàn v n ả
ư ố
ALTER TABLE tên_b ng DROP CONSTRAINT tên_ràng_bu cộ ố ớ ộ ế ộ
ạ i nó
ệ
ụ
d ng (review)
ộ L u ý: đ i v i ràng bu c khóa chính, mu n xóa ả ràng bu c này ph i xóa h t các ràng bu c khóa ế ớ ngo i tham chi u t ả o L nh xóa b ng DROP TABLE tên_b ngả ả ố ư ộ ả L u ý: khi mu n xóa m t b ng ph i xóa t ự ứ ỗ ợ ố ượ ướ ậ ầ Ph n: L p trình h ng h tr xây d ng ng ng đ i t ạ ế ớ ả ữ nh ng khóa ngo i tham chi u t i b ng đó tr ấ ả t c 28 ướ c.
ậ
ả ộ ộ
ị ị
ơ ở ữ ệ 4. L p trình c s d li u (tt) ữ ệ ữ Ngôn ng thao tác d li u ữ ệ Thêm d li u INSERT INTO tên_b ng (c t1,…,c tn) VALUES (giá_tr _1,…., giá_tr _n)
ị
ị ị ả INSERT INTO tên_b ng VALUES (giá_tr _1, giá_tr _2,…, giá_tr _n)
ự ứ
ỗ ợ
ướ
ầ
ng h tr xây d ng ng
29
ộ ộ ị
ụ
d ng (review)
ử ữ ệ S a d li u UPDATE tên_b ng ả ị SET c t_1 = giá_tr _1, c t_2 = giá_tr _2 …. ệ ề [WHERE đi u_ki n] ố ượ ậ ng đ i t Ph n: L p trình h ữ ệ Xóa d li u
ệ ề ả DELETE FROM tên_b ng [WHERE đi u_ki n]
ậ
ấ ữ ữ
ấ ổ
ộ
ệ
ệ ề
ơ ở ữ ệ 4. L p trình c s d li u (tt) ữ ệ Ngôn ng thao tác d li u (tt) ấ ữ ệ Ngôn ng truy v n d li u có c u trúc o Câu truy v n t ng quát SELECT [DISTINCT] *|tên_c t | hàm FROM b ng ả ề [WHERE đi u_ki n] [GROUP BY tên_c t]ộ [HAVING đi u_ki n]
ầ
ự ứ
ỗ ợ
ướ
ng h tr xây d ng ng
o
ụ
d ng (review)
ộ [ORDER BY tên_c t ASC | DESC] ố ượ ậ Ph n: L p trình h ng đ i t
30 Phép k t: Inner Join, Left Join, Right Join, Full
ế
Join
o Đ t alias, s d ng *, distinct
ử ụ ặ
tên_cũ AS tên_m iớ
ộ ầ ỉ ấ Distinct: trùng ch l y m t l n
ơ ở ữ ệ
ậ 4. L p trình c s d li u (tt) o Các toán tử
n
n
ử ử
so sánh: =, >,<,>=,<=,<> AND, OR, NOT logic:
n
Toán t Toán t Phép toán: +, ,* , / n BETWEEN …. AND n
n
IS NULL, IS NOT NULL LIKE (_ %) ế ộ % : thay th m t chu i ký t ế ộ
ỗ ự ấ ỳ b t k
n
n
ố ượ
ướ
ầ
ự ứ
ỗ ợ
ng đ i t
ậ Ph n: L p trình h
ng h tr xây d ng ng
31
n
ự ấ ỳ b t k
ụ
d ng (review)
_ : thay th m t ký t IN, NOT IN EXISTS , NOT EXISTS SOME, ALL
ậ
ơ ở ữ ệ
4. L p trình c s d li u (tt) ấ o Câu truy v n con (subquery)
ẩ ả
n In ho c Exists ặ ơ ố Tìm các s hóa đ n mua cùng lúc 2 s n ph m có mã s “BB01” và “BB02”.
o
ố
select distinct sohd from CTHD where masp='BB01' and sohd IN
o
ự ứ
ỗ ợ
ướ
ầ
32
ậ Ph n: L p trình h
ụ
d ng (review)
(select distinct sohd from CTHD where
masp='BB02') select distinct A.sohd from CTHD A where A.masp='BB01' and ố ượ ng h tr xây d ng ng ng đ i t EXISTS (select * from CTHD B
where B.masp='BB02‘ and
A.sohd=B.sohd)
ậ
ấ
ả ẩ ơ
ố ư ả ẩ
ơ ở ữ ệ 4. L p trình c s d li u (tt) o Câu truy v n con (subquery) (tt) n Not In ho c Not Exists ặ ố Tìm các s hóa đ n có mua s n ph m mã s ố ‘BB01’ nh ng không mua s n ph m mã s ‘BB02’.
o
select distinct sohd from CTHD where masp='BB01' and sohd NOT IN
o
ự ứ
ỗ ợ
ướ
ầ
ng h tr xây d ng ng
33
ậ Ph n: L p trình h
ụ
d ng (review)
(select distinct sohd from CTHD where
masp='BB02') select distinct A.sohd ố ượ ng đ i t from CTHD A where A.masp='BB01' and
NOT EXITST (select * from CTHD
B
where B.masp='BB02‘ and
A.sohd=B.sohd)
ậ
ấ
ấ ả ữ ả ẩ t c nh ng s n ph m
ơ ở ữ ệ 4. L p trình c s d li u (tt) o Câu truy v n con (subquery) (tt) n S d ng NOT EXISTS ử ụ ố ơ Tìm s hóa đ n đã mua t ấ ả ệ t Nam” s n xu t. do “Vi
o Select sohd from HOADON where not
ệ exists (select * from SANPHAM where nuocsx=‘Vi t Nam’ and not exists
ố ượ
ự ứ
ầ
ng h tr xây d ng ng
ng đ i t
34
ậ Ph n: L p trình h
ụ
d ng (review)
(select * from CTHD where HOADON.sohd=CTHD.sohd and CTHD.masp=SANPHAM.masp)) ỗ ợ ướ
ậ
ơ ở ữ ệ
ộ
ị
4. L p trình c s d li u (tt) ơ ả o Các hàm tính toán c b n ế ố ộ ữ ệ ủ n COUNT: Đ m s b d li u c a thu c tính ấ ỏ ị n MIN: Tính giá tr nh nh t ấ ị ớ n MAX: Tính giá tr l n nh t ị n AVG: Tính giá tr trung bình ộ ữ ệ ổ n SUM: Tính t ng giá tr các b d li u
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
35
ụ
d ng (review)
ầ
ướ
ố ượ
ự ứ
ỗ ợ
ậ Ph n: L p trình h
ng đ i t
ng h tr xây d ng ng
36
ụ
d ng (review)