dbmss 00 database concept

Upload: steven-galford

Post on 09-Jan-2016

227 views

Category:

Documents


0 download

TRANSCRIPT

  • Cc h qun tr c s d liuInstructor: Pham Thai Ky Trung, MCSE+, MCDBA, MCITP (Master of Management in IT - MMIT)Faculty of Science and TechnologyHoa Sen UniversityEmail: [email protected]

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*M hnh client-serverServerClientTruy vn c gi n serverKt qu c tr v my trmX l Truy vnTr kt qu cho ngi dngTruy vn ca ngi dng

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*M hnh client-serverServerClient2. Truy vn c gi n server4. Kt qu c tr v my trm3. x l Truy vn5. Tr kt qu cho ngi dng1. Truy vn ca ngi dng

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Cu trc d liu v cc thut ngM hnh c s d liu (CSDL)Mt CSDL l 1 tp hp nhiu bng quan h (relational table)Mi bng (table) l 1 tp hp nhiu ct (column) v 1 lng ty dng (row) Cc ct trong table c t tn theo m t cc c im ca i tng m table phn nhMi dng trong table l mt th hin ca i tng Mi ct c 1 min gi tr tng ng l tp hp cc gi tr c th xut hin trong ctC tn gi khc ct l trng (field) v dng l mu tin (record)

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Cc c tnh ca tableCc gi tr trong 1 ct -> kiu d liu / min gi trCc dng trong table khng c ging nhau.Phi t nht mt hoc nhiu ct trong table l gi tr duy nht phn bit cc dng vi nhau -> Ct ny l kha chnhTh t cc ct khng quan trngTh t cc dng khng quan trng

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Quan h (relatioship) v kha (key)Mt quan h l mt mi lin kt gia mt hoc nhiu table.Cc quan h c biu din di dng cc gi tr ca kha chnh (primary key) v kha ngoi (foreign key)Kha chnh l mt hoc nhiu ct trong 1 table c gi tr khc bit dng nhn din cc dng trong table

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Quan h (relatioship) v kha (key)Kha ngoi l mt hoc nhiu ct trong 1 table c gi tr ging vi kha chnh ca mt table khc. Quan h gia 2 table c thit lp bng cch so khp cc gi tr ca kha ngoi trong table ny vi cc gi tr ca kha chnh trong table kiaKha l khi nim trong m hnh CSDL quan h v chng cho php lin kt cc table li vi nhau

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Rng buc trn vn (RBTV)Ti sao c RBTV? Cc quy tc, rng buc -> RBTV (intergrity constraint)C 2 loi rng buc cn bnRng buc thc th (entity integrity)Rng buc tham chiu (referential integrity)

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Rng buc trn vn (RBTV)Ti sao c RBTV? Cc quy tc, rng buc -> RBTV (intergrity constraint)C 2 loi rng buc cn bnRng buc thc th (entity integrity)Rng buc tham chiu (referential integrity)

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Rng buc trn vn (RBTV)Rng buc thc th: gi tr ca kha chnh khng th NULL v phi phn bit. Bi kha chnh lun phn bit cc dng trong table, nn kha chnh lun lun phi c 1 gi tr.

    Rng buc tham chiu: nu mt table c dng mt kha ngoi th mi gi tr ca kha ngoi hoc l NULL hoc phi trng vi cc gi tr c trong mt table khc c kha chnh l kha ngoi trn

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Cc i tng khc trong CSDLQHDatatype (kiu d liu)Stored-procedure (th tc lu tr): ging cc macro c vit bng cu lnh SQL v c lu tr di 1 tnUser-defined function (hm do ngi dng nh ngha): ging stored-procedureTrigger (by li): l cc stored-procedure c kch hot trc hoc sau khi thm, sa, xa d liu nhm m bo cc RBTVView (khung nhn) : l cc truy vn tham chiu ti mt hoc nhiu tableIndex (ch mc) : t chc d liu, tng tc ..

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Cc h QTCSDLTi sao cn c H QTCSDL (Relational Database Management System RDBMS) H QTCSDL l g?H QTCSDL qun l CSDL theo m hnh quan h do TS. E.F.Cold a ra.Lm th no truy xut v thao tc d liu?Mt s h QTCSDL thng dng:Oracel, Micrsoft SQL Server, IBM DB/2, SysbaseMySQL, PostgreSQL

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CNG VIC CA NGI QTCSDLCi t & cu hnh serverHoch nh v to cc databaseSao lu & phc hi databaseQun tr ngi dngCp pht quyn hn truy cpNhp xut d liuNhn bn d liuTi u ha hot ng ca serverKhc phc cc s c xy ra

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLCu lnh SELECTc dng chn d liu trong 1 table.Kt qu tr v c gi trong b kt qu c dng tableC php: SELECT Tn_Ct [,Tn_Ct] FROM Tn_Table

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLMnh WHERE ch nh cc iu kin rt trch d liu khi truy vn.C php: SELECT Tn_Ct [,Tn_Ct] FROM Tn_Table WHERE Tn_Ct Ton_t_gi_trCc ton t gi tr: = hoc !=>, =,
  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLCu lnh INSERT INTODng thm 1 dng d liu mi vo table.C php: INSERT INTO Tn_table VALUES (gi_tr_1, gi_tr_2,.)Hay INSERT INTO Tn_table (Tn_ct_1,) VALUES (gi_tr_1,)

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLCu lnh UPDATEDng cp nht, chnh sa d liu c trong table.C php: UPDATE Tn_Table SET Tn_ct = gi_tr_mi [, Tn_ct=gi_tr_mi [,] WHERE Tn_ct = gi_tr_no_

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLCu lnh DELETEDng xa d liu c trong table.C php: DELETE FROM Tn_Table WHERE Tn_ct = gi_tr_no_ Lu : DELETE * FROM Tn_table Dng xa tt c cc dng trong table

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLT kha ORDER BYSp xp th t kt quORDER BY Tn_ctT kha AND, ORDng ni nhiu iu kin trong mnh WHERET kha BETWEEN..AND..Dng chn ra d liu t mt bin cho trc. Cc gi tr c th l s, vn bn hoc thi gian

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLT kha JOIN:Dng lin kt 2 table rt trch d liu t 2 tableCc table trong csdl lin h vi nhau thng qua cc kha v nh vy 1 phn d liu khng lp li trong csdl

    INNER JOINLEFT JOIN: tt c cc dng trong table 1 ngay khi khi dng ko khp dng no trong table 2RIGHT JOIN: Tt c cc dng trong table 2 ngay khi dng khng khp vi 1 dng no trong table th nht

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLT kha GROUP BY v HAVINGCc hm gp (aggregate function) ca SQL.Cc hm gp khng th s dng trong mnh WHERE.S dng cc hm MAX, MIN, COUNT, SUM, AVGT tm hiu ROLLUP, CUBE, GROUPING, COMPUTE, UNION, EXCEPT, INTERSECT

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLTo ViewView l g? Cc kiu ViewThun li ca ViewHn ch ca ViewC php:CREATE VIEW Tn_ViewAS Cu Lnh SELECTGO

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLThay i ViewC php:ALTER VIEW Tn_ViewAS Cu Lnh SELECTGOXa View:C php:DROP VIEW Tn_View

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLStored Procedure l g?L tp hp cc pht biu T-SQLStored c thc thi ln u tin khng phi bin dch liChp nhn tham s nhp, tr v gi tr xut nh tham sCho php nhiu ngi dng lp li cng tc v mt cch nht qunStored Proc ca h thng, Stored Proc bn ngoi, Stored Proc do ngi dng nh ngha Khng nn t tn Stored Proc bt u vi tin t sp_

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLC php Stored Proc:IF EXISTS (SELECT name FROM sysobjects WHERE name=DienthoaiLH AND type=p)DROP PROC DienthoaiLHGOCREATE PROC DienthoaiLHAS SELECT FROM Ten_Bang WHERE Dienthoai IS NOT NULLGO

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*CN BN V NGN NG VN TIN SQLC php Stored Proc c s dng tham s:IF EXISTS (SELECT name FROM sysobjects WHERE name=DienthoaiLH AND type=p)DROP PROC DienthoaiLHGOCREATE PROC DienthoaiKH @sodt char(20)AS SELECT FROM Ten_Bang WHERE Dienthoai =@sodtGO

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*

    Database Management Systems

  • Faculty of Science and TechnologyDatabase Management Systems*Q & A

    Database Management Systems

    ***Cc gi tr cha trong table khng th chia nh hn na. C ngha l cc ct khng phi l cc mng hay cc nhm lp li. Nh cc thao tc d liu trn table s rt n gin.***Cc thao tc cp nht ln CSDL khng nn thc hin 1 cch ty tin, c th a CSDL n 1 trng thi khong mong mun, khng nht qun, khng cn phn nh ng th gii thc m n i din

    Cc thao tc cp nht trn CSDL phi tun th mt s nguyn tc rng buc nht nh.*Cc thao tc cp nht ln CSDL khng nn thc hin 1 cch ty tin, c th a CSDL n 1 trng thi khong mong mun, khng nht qun, khng cn phn nh ng th gii thc m n i din

    Cc thao tc cp nht trn CSDL phi tun th mt s nguyn tc rng buc nht nh.**Bn thn 1 d liu th ko em c li ch no cho ngi s dng, bi d liu c lu trn cc thit b lu tr theo nhng dng thc, cu trc m ngi bnh thng khng th hiu v s dng c. Ngoi ra khai thc tt thng tin lu tur74 torng SDL, ngi s dng i hi phi truy xut d liu mt cch nhanh chng, cp nht d liu phi m bo tnh nht qun, ng b. Nhng cng vic ny bn thn ngi s dng khng th m bo c, nht l trong h thng a ngi dng. Chnh v nhng l do ngi ta cn phi c h qun tr CSDL

    H QTCSDL l 1 tp hp nhiu phn mm ng vai tr lm giao din trung gian gia ngi s dng v d liu c trong c s d liu.

    Trung tm ca tt c cc h thng thng tin ngy nay do cc h thng RDBMS qun l

    truy xut v thao tc d liu, RDMBS yu cu ngi s dng phi dng ngn ng truy vn tin SQL. y l 1 ngn ng phi th tc. im khc bit chnh gia SQL vi cc ngn ng lp trnh khc l cu lnh SQL cho bit cn phi thc hin thao tc g ln d liu ch ko phi thc hin thao tc nh th no.*