Mga uso at uso sa fashion.  Mga accessories, sapatos, kagandahan, hairstyle

Mga uso at uso sa fashion. Mga accessories, sapatos, kagandahan, hairstyle

» Paglalahad sa paksang “Relational Data Model. Mga link sa RDB

Paglalahad sa paksang “Relational Data Model. Mga link sa RDB

1 slide

2 slide

Ang core ng anumang database ay ang modelo ng data. Ang modelo ng data ay isang hanay ng mga istruktura ng data, mga hadlang sa integridad, at mga operasyon sa pagmamanipula ng data. Sa tulong ng isang modelo ng data, ang mga bagay ng lugar ng paksa at ang ugnayan sa pagitan ng mga ito ay maaaring katawanin. Ang modelo ng data ay isang koleksyon ng mga istruktura ng data at ang kanilang mga operasyon sa pagproseso.

3 slide

4 slide

Hierarchical data model Ang mga bagay na konektado ng mga hierarchical na relasyon ay bumubuo ng isang nakadirekta na graph (inverted tree). Ang mga pangunahing konsepto ng hierarchical na istraktura ay kinabibilangan ng: antas, elemento (node), link. Ang node ay isang koleksyon ng mga katangian ng data na naglalarawan sa isang bagay. Sa diagram ng isang hierarchical tree, ang mga node ay kinakatawan ng mga vertices ng isang graph. Ang bawat node sa isang mas mababang antas ay nauugnay sa isang node lamang sa isang mas mataas na antas. Ang isang hierarchical tree ay mayroon lamang isang vertex (ang ugat ng puno), hindi subordinate sa anumang iba pang vertex at matatagpuan sa pinakamataas (unang) antas. Ang mga dependent (subordinate) na node ay nasa pangalawa, pangatlo, atbp. mga antas. Ang bilang ng mga puno sa database ay tinutukoy ng bilang ng mga root record. Mayroon lamang isang (hierarchical) na landas mula sa root record hanggang sa bawat database record.

5 slide

6 slide

Modelo ng data ng network Sa isang istraktura ng network na may parehong mga pangunahing konsepto (level, node, link), ang bawat elemento ay maaaring iugnay sa anumang iba pang elemento. Ang isang halimbawa ng isang kumplikadong istraktura ng network ay ang istraktura ng isang database na naglalaman ng impormasyon tungkol sa mga mag-aaral na lumalahok sa mga proyekto ng pananaliksik. Posible para sa isang mag-aaral na lumahok sa ilang mga IR, gayundin ang paglahok ng ilang mga mag-aaral sa pagbuo ng isang IR.

7 slide

Relational data model Ang relational data model ay nakatuon sa pag-aayos ng data sa anyo ng dalawang-dimensional na mga talahanayan. Ang bawat relational table ay isang two-dimensional array at may mga sumusunod na katangian: bawat elemento ng talahanayan - isang elemento ng data; lahat ng column sa table ay homogenous, i.e. lahat ng elemento sa isang column ay may parehong uri (numeric, character, atbp.) at haba; bawat column ay may kakaibang pangalan; walang magkatulad na mga hilera sa talahanayan; ang pagkakasunud-sunod ng mga row at column ay maaaring maging arbitrary.

8 slide

Ang isang relational table ay maaaring kumatawan ng impormasyon tungkol sa mga mag-aaral na nag-aaral sa isang unibersidad. Ang isang field, na ang bawat halaga nito ay katangi-tanging kinikilala ang kaukulang talaan, ay tinatawag na isang simpleng key (key field). Kung ang mga talaan ay natatanging kinilala ng mga halaga ng ilang mga patlang, kung gayon ang naturang talahanayan ng database ay may pinagsama-samang susi. Sa halimbawa, ang key field sa talahanayan ay "Personal File No."

Mga paksang sakop: 1. Relational model - Maikling pangkalahatang-ideya ng kasaysayan ng relational model - Terminolohiya na ginamit - Alternatibong terminolohiya - Mathematic na relasyon - Relations at ang kanilang mga katangian sa database - Relational keys - Representasyon ng mga schema sa relational database - Relational integrity 2. Relational na wika 3. Relational algebra - Unary relational algebra - Set operations - Join operations - Division 4. Relational calculus - Relational tuple calculus - Domain relational calculus 5. Iba pang mga wika

Relational model Ang istruktura ng pagpoproseso ng impormasyon sa isang relational database Relational algebra Data. Modelo ng Relational Data Relational Database SQL-Standard Query Language

Relational model Mga layunin ng paglikha ng relational na modelo: 1) Tinitiyak ang mataas na antas ng kalayaan mula sa data. 2) Pag-normalize ng mga relasyon, ibig sabihin, paglikha ng mga relasyon nang walang paulit-ulit na mga grupo. 3) Pagpapalawig ng mga wika sa pamamahala ng data sa pamamagitan ng pagsasama ng mga operasyon sa mga set.

Relational Model Terminology na Ginamit Bilang isang bihasang mathematician, malawakang ginamit ni Codd ang matematikal na terminolohiya ng set theory at predicate logic. Ang relational na modelo ay batay sa matematikal na konsepto ng isang relasyon, ang pisikal na representasyon nito ay isang talahanayan.

Mga Terminolohiyang Ginamit Relational Data Structure Katangian ng Relasyon Domain Cardinality Tuple Degree of Relationship Data Tables Relational Database

Terminolohiyang ginamit Numero Apelyido Baitang 6 Ivanov 5 17 Petrov 4 19 Sidorov 4. 5 T N O SH E N I E S T E P E N K A R D IN A L N O S T ATTRIBUTES CORTAGE Relational data structure

Mga Terminolohiyang Ginamit Ang relasyon ay isang flat (two-dimensional) na talahanayan na binubuo ng mga column at row. Ang attribute ay isang pinangalanang column ng isang relasyon. Ang isang domain ay isang hanay ng mga wastong halaga para sa isa o higit pang mga katangian, salamat sa kung saan ang gumagamit ay maaaring sentral na tukuyin ang kahulugan at pinagmulan ng mga halaga na maaaring matanggap ng mga katangian. Ang tuple ay isang string ng relasyon. Ang mga tuple ay tinatawag na extension, estado o katawan ng isang relasyon na patuloy na nagbabago. Ang paglalarawan ng istraktura ng isang relasyon, kasama ang mga detalye ng mga domain at anumang iba pang mga paghihigpit sa mga posibleng halaga ng mga katangian, kung minsan ay tinutukoy bilang pamagat nito (o intensyon).

Mga Terminolohiyang Ginamit Ang antas ng isang relasyon ay tinutukoy ng bilang ng mga katangiang taglay nito. Ang Cardinality ay ang bilang ng mga tuple na naglalaman ng isang relasyon. Cardinality - mga katangian tungkol sa katawan ng kaugnayan (nagbabago ito sa bawat pagdaragdag o pag-alis ng mga tuple). Ang relational database ay isang set ng mga normalized na relasyon. Ang isang relational database ay binubuo ng mga relasyon, ang istraktura nito ay tinukoy gamit ang mga espesyal na pamamaraan na tinatawag na normalisasyon.

Alternatibong terminolohiya Mga opisyal na termino Alternatibo 1 Alternatibo 2 Relasyon Table File Tuple String Record Attribute Column Field

Mga Relasyon at Ang Kanilang Mga Katangian sa isang Database Ang relational schema ay ang pangalan ng isang relasyon, na sinusundan ng maraming pares ng mga katangian at domain. mga katangian A 1, A 2,. ... Isang relational schema a: mga domain D 1, D 2. ... Dn (A 1: D 1.... An: Dn) Sa isang relational na modelo, ang isang relasyon ay maaaring katawanin bilang isang arbitrary na subset ng isang produkto ng Cartesian, at ang talahanayan ay isang pisikal na representasyon ng naturang relasyon.

Mga relasyon at ang kanilang mga katangian sa database Mga katangian ng relasyon: Ang isang relasyon ay may natatanging pangalan. Ang bawat cell ng isang relasyon ay naglalaman lamang ng isang atomic (indivisible) na halaga. Ang bawat katangian ay may natatanging pangalan. Ang mga halaga ng katangian ay kinuha mula sa parehong domain. Ang pagkakasunud-sunod ng mga katangian ay hindi mahalaga. Ang bawat tuple ay natatangi, iyon ay, maaaring walang mga duplicate na tuple. Ang pagkakasunud-sunod ng mga tuple sa isang relasyon ay hindi mahalaga.

Relational keys Ang superkey ay isang tribute o set ng mga attribute na natatanging tumutukoy sa isang tuple ng isang partikular na kaugnayan. Ang potensyal na key ay isang superkey na hindi naglalaman ng subset na siya ring superkey ng relasyon. Ang potensyal na key K para sa isang naibigay na kaugnayan R ay may dalawang katangian: Pagkakatangi-tangi. Sa bawat tuple ng ugnayang R, ang halaga ng key K ay natatanging kinikilala ang tuple na ito. Irreducibility. Walang wastong subset ng key K na natatangi.

Relational Keys Ang pagkakaroon ng mga dobleng halaga sa isang partikular na umiiral na hanay ng mga tuple ay nagpapatunay na ang ilang kumbinasyon ng mga katangian ay hindi maaaring maging isang potensyal na susi. Kung ang isang susi ay binubuo ng ilang mga katangian, kung gayon ito ay tinatawag na isang pinagsama-samang susi. Ang pangunahing susi ay isang susi ng kandidato na pinili upang makilala ang mga tuple sa isang relasyon. Dahil ang isang kaugnayan ay hindi naglalaman ng mga duplicate na tuple, maaari mong palaging natatanging tukuyin ang bawat isa sa mga row nito. Nangangahulugan ito na ang isang relasyon ay palaging may pangunahing susi.

Mga Relational Key Ang mga potensyal na key na hindi pinili bilang pangunahing key ay tinatawag na mga alternatibong key. Ang foreign key ay isang attribute o set ng mga attribute sa loob ng isang relasyon na tumutugma sa potensyal na key ng ilang (marahil pareho) na relasyon.

Kinakatawan ang mga schema sa isang relational database Ang isang relational database ay maaaring binubuo ng anumang bilang ng mga relasyon. Ang isang konseptwal na modelo, o konseptwal na schema, ay tumutukoy sa hanay ng lahat ng relational database.

Relasyonal na integridad Ang modelo ng data ay may dalawang bahagi: - ang bahagi ng kontrol, na tumutukoy sa mga uri ng pinapayagang operasyon kasama ang data, - isang hanay ng mga hadlang sa integridad na ginagarantiyahan ang kawastuhan ng data. Ang NULL qualifier ay ipinakilala upang mapanatili ang mga panuntunan sa integridad at nagpapahiwatig na ang halaga ng isang katangian ay kasalukuyang hindi alam o hindi katanggap-tanggap para sa tuple na ito. Ang mga zero at puwang ay kumakatawan sa ilang mga halaga, habang ang NULL na keyword ay sinadya upang tukuyin ang kawalan ng anumang halaga.

Ang integridad ng Relational Integrity Entity ay nangangahulugan na walang pangunahing key na attribute ang maaaring maglaman ng mga nawawalang value, na tinutukoy ng NULL qualifier. Kung mayroong isang NULL qualifier sa alinmang bahagi ng pangunahing key, iginiit nito na hindi lahat ng mga katangian nito ay kinakailangan upang natatanging makilala ang mga tuple. Ito ay salungat sa kahulugan ng isang pangunahing susi.

Relational integrity Referential integrity. Kung mayroong foreign key sa relasyon, dapat tumugma ang foreign key value sa potensyal na key value ng ilang tuple sa base relation nito, o tukuyin ng NULL qualifier. Ang mga hadlang sa integridad ng data ng enterprise ay mga karagdagang panuntunan para sa pagpapanatili ng integridad na tinukoy ng mga user o mga administrator ng database.

Ang mga relational na wika Ang relational algebra ay isang (mataas na antas) procedural language. Paggamit: Isang mensahe mula sa DBMS kung paano buuin ang kinakailangang relasyon batay sa isa o higit pang umiiral na mga relasyon sa database. Ang relational calculus ay isang non-procedural na wika. Paggamit: Pagtukoy kung ano ang magiging relasyon, batay sa isa o higit pang mga relasyon sa database. Relational-Complete Language Usage: Kumuha ng anumang kaugnayan na maaaring mahinuha gamit ang relational calculus.

Ang relational algebra ay isang teoretikal na wika ng mga operasyon na, batay sa isa o ilang mga relasyon, ay nagpapahintulot sa iyo na lumikha ng isa pang kaugnayan nang hindi binabago ang orihinal na mga relasyon sa kanilang sarili.

Mga pangunahing operasyon ng relational algebra: - seleksyon - projection (p rojection) - Cartesian product (may artesian product) - unyon (set difference) Mga karagdagang operasyon: - join - intersection - division (division) Relational algebra

Unary operations ng relational algebra Selection operation: Gumagana sa isang relation R. Tinutukoy ang nagreresultang relasyon na may parehong pamagat ng relation R at isang body na binubuo ng mga tuple na ang mga attribute value, kapag pinalitan sa kondisyon (predicate), ay nagbubunga ng value na totoo.

Unary operations ng relational algebra Ang pinakasimpleng kaso: Ang X Y ay isang kondisyon (predicate), ay isa sa mga operator ng paghahambing (, atbp.), X at Y ay mga katangian ng ugnayang R o mga halaga ng scalar. Piliin ang operator syntax: R kung saan, o R kung saan (X Y) SQL syntax: piliin ang * mula sa R ​​kung saan (X Y)

Unary operations ng relational algebra Halimbawa ng processing at sampling Ratio (impormasyon ng mag-aaral) Sample na resulta R kung saan Average na marka<5 Номер студента Фамилия Средний балл 6 17 19 Иванов Петров Сидоров 5 4 4, 5 Номер студента Фамилия Средний балл 17 19 Петров Сидоров 4 4,

Unary relational algebra operations Projection operation: Gumagana sa isang solong kaugnayan R. Tinutukoy ang isang bagong kaugnayan sa pamagat (X, ..., Z) na naglalaman ng vertical subset ng kaugnayan R, na nilikha sa pamamagitan ng pagkuha ng mga halaga ng mga tinukoy na katangian mula sa resulta ng mga duplicate na row. Syntax ng pagpapatakbo ng projection: R [X,…, Z] SQL syntax: Piliin ang X, Y,..., Z mula sa R

Unary operations ng relational algebra Isang halimbawa ng view at projection Ang kaugnayan R (impormasyon tungkol sa mga guro) Paksa Heograpiya Kasaysayan Pilosopiya Numero ng tauhan Apelyido Paksa 4587 Bondarenko Heograpiya 2136 Voronin Kasaysayan 5496 Anisimova Philosophy Projection R [Subject]

Operations on Sets Ang Cartesian product na R × S ay tumutukoy sa isang bagong relasyon na resulta ng concatenation (ibig sabihin, concatenation) ng bawat tuple mula sa relation R sa bawat tuple mula sa relation S. Syntax ng Cartesian product operation: R times S SQL syntax : Piliin ang * mula sa R, S

Numero ng mag-aaral Apelyido 6 Ivanov 17 Petrov 19 Sidorov Pangalan ng subject code 101 Physics 102 Mathematics 103 Computer science. Itakda ang mga pagpapatakbo Halimbawa ng Cartesian product Ratio (Mga Mag-aaral) S ratio (Mga Paksa)

Numero ng mag-aaral Apelyido Code ng paksa Pangalan 6 Ivanov 101 Physics 6 Ivanov 102 Mathematics 6 Ivanov 103 Informatics 17 Petrov 101 Physics 17 Petrov 102 Mathematics 17 Petrov 103 Informatics 19 Sidorov 101 Physics 102 Mathematics 101 Sidorovics 101 Sidorovics Relasyon R TIMES S Itakda ang mga operasyon

Itakda ang mga operasyon Ang operasyon ng unyon na RS ay nagreresulta mula sa pagsasama-sama ng R at S, na may pagbuo ng isang relasyon na may parehong heading bilang mga relasyon R at S at isang katawan na binubuo ng mga tuple na kabilang sa alinman sa R ​​o S, o parehong mga relasyon (na may maximum bilang ng mga tuple) kung ang mga duplicate na tuple ay hindi kasama. Syntax ng pagpapatakbo ng unyon: R union S. SQL syntax: (Piliin * mula sa R) unyon (piliin ang * mula sa S)

Numero ng mag-aaral Apelyido Average na marka 6 Ivanov 5 17 Petrov 4 19 Sidorov 4, 5 Numero ng mag-aaral Apelyido Average na marka 6 Ivanov 5 18 Pushnikov 3, 5 19 Sidorov 4, 5 Operations na may mga set Halimbawa ng operasyon ng unyon Relation R (impormasyon tungkol sa mga mag-aaral) Relation S (impormasyon tungkol sa mga mag-aaral)

Numero ng mag-aaral Apelyido Average na marka 6 Ivanov 5 17 Petrov 4 19 Sidorov 4, 5 18 Pushnikov 3, 5 Pagsasama-sama ng mga ugnayang R at S Operations na may mga set

Mga Operasyon na may mga hanay Ang pagkakaiba ng operasyong RS ay tumutukoy sa isang relasyon na may parehong heading gaya ng mga ugnayang R at S, at isang katawan na binubuo ng mga tuple na kabilang sa ugnayang R at hindi kabilang sa relasyong S, tulad ng mga umiiral sa kaugnayan R ngunit wala sa ugnayang S . Pagkakaiba ng syntax: R minus S SQL syntax: (piliin * mula sa R) exept (piliin * mula sa S)

Mga operasyon na may mga set (error) Halimbawa ng pagkakaiba ng operasyon Ratio R Numero ng mag-aaral Apelyido Average na marka 6 Ivanov 5 17 Petrov 4 19 Sidorov 4, 5 Relasyon S Numero ng mag-aaral Apelyido Average na marka 6 Petrov 4 18 Sidorov 4, 5 20 20 Pushnikov 3,

Operations with sets Numero ng mag-aaral Apelyido Average na marka 17 Petrov 4 19 Sidorov 4, 5 Ratio R MINUS S

Itakda ang mga operasyon Ang intersection operator na R ∩ S ay tumutukoy sa isang ugnayan na naglalaman ng mga tuple na nasa parehong ugnayang R at sa ugnayang S. Intersection syntax: R intersect S SQL syntax: (Piliin * mula sa R) intersect (piliin * mula sa S)

Operations with sets Halimbawa ng intersection operation Numero ng mag-aaral Apelyido Average na marka 6 Ivanov 5 17 Petrov 4 19 Sidorov 4, 5 Ratio R (impormasyon tungkol sa mga mag-aaral) Numero ng mag-aaral Apelyido Average na marka 6 Ivanov 5 18 Pushnikov 3, 5 20 Sidorov 4, 5 Attitude S (impormasyon tungkol sa mga mag-aaral)

Numero ng mag-aaral Apelyido Average na marka 6 Ivanov 5 Itakda ang ratio ng mga operasyon INTERSECT S

Join operations Ang joint operation ay isang kumbinasyon ng isang Cartesian na produkto at isang seleksyon; ito ay katumbas ng operasyon ng pagkuha mula sa Cartesian product ng dalawang operand ng mga relasyon ng mga tuple na iyon na nakakatugon sa kundisyong tinukoy sa join predicate bilang isang formula ng pagpili . Ang koneksyon ng mga relasyon R at S sa pamamagitan ng kundisyon F ay tinatawag na kaugnayan (R beses S) kung saan F Syntax sa SQL: Piliin ang R. *, S. * mula sa R, S kung saan f

Join operations Mga uri ng join operations: - theta join - equivalence join (isang espesyal na case ng theta join) - natural join - outer join - semi-join

Join operations T ang theta-join ay tumutukoy sa isang relasyon na naglalaman ng mga tuple mula sa Cartesian na produkto ng mga relasyong R at S na nagbibigay-kasiyahan sa panaguri F. Ang panaguri F ay may anyo, kung saan ang isa sa mga operator ng paghahambing (<, >=, = o - =). - ang koneksyon ng ugnayang R sa katangian X na may kaugnayan S sa katangiang Y ay tinatawag na kaugnayan (R beses S) kung saan (X Y). SQL syntax: Piliin ang * mula sa R, S kung saan (R. X S. Y) SRF iib. Sa. R.

Mga pagpapatakbo ng koneksyon Isang halimbawa ng koneksyon sa theta Ang database ay nag-iimbak ng impormasyon tungkol sa: - mga guro; - mga bagay. Tandaan: ang mga guro ay may karapatang magturo ng mga asignatura na ang katayuan ay hindi mas mataas kaysa sa guro. Numero ng tauhan Apelyido X (Katayuan ng guro) 4587 Bondarenko 4 2136 Voronin 1 5496 Anisimova 2 Saloobin R (Mga Guro) Kodigo ng paksa Pangalan Y (Katayuan ng paksa) 101 Kasaysayan 3 102 Heograpiya 2 103 Pilosopiya 1 Saloobin S (Mga Paksa)

Connection operations Ang sagot sa tanong na: “Aling mga guro ang may karapatang magturo ng mga asignatura? »Nagbibigay -koneksyon R [XY] S: Personnel number Apelyido X (Teacher status) Subject code Pangalan Y (Subject status) 4587 Bondarenko 4 101 History 3 4587 Bondarenko 4 102 Heograpiya 2 4587 Bondarenko 4 103 Philosophy 1 2136 Voronin Philosophy 1 2136 5496 Anisimova 2 102 Heograpiya 2 5496 Anisimova 2 103 Pilosopiya 1 Saloobin “Anong mga asignatura ang itinuturo ng mga guro? "

Pagsali sa mga operasyon Ang E qui-join (pagsali sa pamamagitan ng equivalence) ay isang espesyal na kaso ng -joint, kapag mayroon lamang pagkakapantay-pantay (ang panaguri F ay naglalaman lamang ng equality operator (=)). Equi-join syntax: R [X = Y] S SQL syntax: piliin ang R. *, S. * mula sa R, S kung saan (R. X = S. Y)

Mga pagpapatakbo ng koneksyon (Error) Halimbawa ng equi-connection Numero ng mag-aaral S NUM Apelyido ng mag-aaral S NAME 6 Ivanov 17 Petrov 19 Sidorov Ratio S (Mga Mag-aaral) Code ng paksa PCOD Pangalan ng paksa P NAME 101 Physics 102 Mathematics 103 Computer science P relation (Mga Paksa)

Numero ng mag-aaral S NUM Subject code PCOD Average na marka sa subject na SRBALL 6 101 4, 5 6 102 4 6 103 5 17 101 3, 5 17 102 4 19 101 4, 5 Connection operations Attitude SP (Pag-aaral) Sagot sa tanong: " Anong mga paksa ang pinag-aralan ng mga mag-aaral? “, Nagbibigay ng katumbas na koneksyon S [S NUM = S NUM] SP. Dahil ang relasyon ay may parehong mga katangian, kailangan mo munang palitan ang pangalan ng mga ito. Nakukuha namin ang: (S rename S NUM bilang S NUM 1) [S NUM 1 = S NUM 2] (SP palitan ang pangalan ng S NUM bilang S NUM 2).

Numero ng mag-aaral S NUM 1 Apelyido ng mag-aaral S NAME Numero ng mag-aaral S NUM 2 Code ng paksa PCOD Average na marka sa SRBALL 6 Ivanov 6 101 4, 5 6 Ivanov 6 102 4 6 Ivanov 6 103 5 17 Petrov 17 101 3, 5 17 Petrov 147 102 19 Sidorov 19 101 4, 5 Mga operasyon ng koneksyon Saloobin “Anong mga paksa ang pinag-aaralan ng mga mag-aaral? "

Mga operasyon ng pagsali Ang natural na pagsasama ay isang katumbas na pagsasama ng dalawang ugnayang R at S, na isinagawa sa lahat ng karaniwang katangian, mula sa mga resulta kung saan ang isang instance ng bawat karaniwang katangian ay hindi kasama. Natural join syntax: R join S. Ang natural na join ay ginawa sa lahat ng parehong attribute. SR

Join operations Isang halimbawa ng natural na join Pinasimpleng notasyon: Ang sagot sa tanong na “Anong mga paksa ang pinag-aaralan ng mga mag-aaral? “Sa anyo ng natural na kumbinasyon ng tatlong relasyon S sumali sa SP sumali P: Numero ng mag-aaral S NUM Apelyido ng mag-aaral S NAME Kodigo ng paksa PCOD Pangalan ng paksa P NAME Average na marka sa SRBALL 6 Ivanov 101 Physics 4, 5 6 Ivanov 102 Mathematics 4 6 Ivanov 103 Computer science 5 17 Petrov 101 Physics 3, 5 17 Petrov 102 Mathematics 4 19 Sidorov 101 Physics 4, 5 Ratio S JOIN SP JOIN P

Join operations Ang panlabas na joint operation ay ginagamit kapag pinagsama ang dalawang relasyon na ang mga column ay may mga hindi tugmang value. Panlabas na pagsali: kaliwa at kanan. Left Outer Join: Ang mga tuple ng ugnayang R na walang parehong mga halaga sa mga karaniwang hanay ng kaugnayan S ay kasama rin sa resultang kaugnayan. Ang denotasyon ng mga nawawalang halaga sa pangalawang kaugnayan ay ang NULL qualifier. SR

Numero ng mag-aaral Apelyido Average na marka 6 Ivanov 5 17 Petrov 3 19 Sidorov 4 Tandaan: ang isang mag-aaral ay maaaring makilahok sa mga Olympiad sa mga paksa na ang kabuuang iskor ay hindi hihigit sa average na marka ng mag-aaral. Gawain: sa batayan ng ugnayan sa pagitan ng R at S, lumikha ng isang listahan kung saan ang mga mag-aaral at mga paksa kung saan sila lumahok sa mga Olympiad ay ipinahiwatig. Join Operations Halimbawa ng Left Outer Join Ratio R

Saloobin S Code ng paksa Pangalan Kabuuang marka 101 Physics 4, 5 102 Chemistry 4 Numero ng mag-aaral Apelyido Average na marka Code ng paksa Pangalan Kabuuang puntos 6 Ivanov 5 101 Physics 4, 5 6 Ivanov 5 102 Chemistry 4 17 Petrov 3 NULL 19 Sidorov 4 102 Talahanayan ((P (R)) S)< Операции соединения

Join Operations Right Outer Join: Ang resultang relasyon ay naglalaman ng lahat ng tuple ng tamang relasyon. Buong panlabas na pagsasama: Ang lahat ng tuple mula sa parehong mga ugnayan ay inilalagay sa nagreresultang kaugnayan, at ang mga NULL na kwalipikasyon ay ginagamit upang tukuyin ang hindi tumutugmang mga halaga ng tuple.

Join operations Semi-join operation: tumutukoy sa isang ugnayan na naglalaman ng mga tuple ng ugnayang R na kasama sa pagsasama ng mga ugnayang R at S. Pagbubuo ng semi-join operation gamit ang projection at join operator: SRF) SR (ПSRFAF kung saan Ang A ay ang hanay ng lahat ng mga katangian na may kaugnayan sa R.

Halimbawa ng semi-joining na operasyon Numero ng mag-aaral Apelyido Average na marka Code ng paksa Pangalan Kabuuang puntos 6 Ivanov 5 101 Physics 4, 5 6 Ivanov 5 102 Chemistry 4 19 Sidorov 4 102 Chemistry 4 Joining operations

Pagpapatakbo ng dibisyon P ust: - ang kaugnayan R ay tinukoy sa hanay ng mga katangian A; - kaugnayan S - sa hanay ng mga katangian B; - SA ISANG; - С = А-В (Ang С ay isang hanay ng mga katangian ng kaugnayan R, na hindi mga katangian ng kaugnayan S). Ang resulta ng dibisyon R S ay isang hanay ng mga tuple ng kaugnayan R, na tinukoy sa hanay ng mga katangian C, na tumutugma sa kumbinasyon ng lahat ng mga tuple ng kaugnayan S.

Pagpapatakbo ng dibisyon Halimbawa ng operasyon ng dibisyon Ratio R Numero ng pangkat Bilang ng mga mag-aaral Pangalan ng curator Code ng paksa Pangalan ng paksa TM-31 20 Ivanov 01 Mathematics TM-32 22 Petrov 01 Mathematics TI-31 13 Sidorov 01 Mathematics TM-31 20 Ivanov 02 Physics TM -32 22 Petrov 02 Physics

Attitude S T 1: Piliin ang ‘Subject code’, ‘Subject name’ mula sa R ​​Division operation Numero ng grupo Bilang ng mga mag-aaral Pangalan ng Curator TM-31 20 Ivanov TM-32 22 Petrov TI-31 13 Sidorov Subject code Pangalan ng subject 01 Mathematics 02 Physics

T 21: Pumili * mula sa T 1, S Division operation Subject code Pangalan ng paksa Numero ng paksa Numero ng grupo Bilang ng mga mag-aaral Pangalan ng Curator 01 Mathematics TM-31 20 Ivanov 01 Mathematics TM-32 22 Petrov 01 Mathematics TI-31 13 Sidorov 02 Physics TM- 31 20 Ivanov 02 Physics TM-32 22 Petrov 02 Physics TI-31 13 Sidorov

T 22: (Piliin * mula sa T 21) exept (Piliin * mula sa R) T 2: Piliin ang 'Subject code', 'Subject name' mula sa T 22 Division operation P = T 1- T 2 Subject code Pangalan ng paksa Numero ng grupo Numero ng Mga mag-aaral Pangalan ng Curator 02 Physics TI-31 13 Sidorov Subject code Pangalan ng subject 02 Physics Subject code Pangalan ng subject 01 Mathematics

Relational calculus Ang pinagmulan ng pangalang "relational calculus": mula sa isang bahagi ng simbolikong lohika na tinatawag na predicate calculus. Ang relational calculus ay umiiral sa dalawang anyo: - relational calculus ng tuples; - relational calculus ng mga domain.

Relational calculus Ang predicate sa first-order logic ay isang truth function na may mga parameter. Ang paghatol ay isang expression na tinatanggap ng isang function pagkatapos palitan ang mga halaga para sa mga parameter. Paghuhukom: totoo at mali. Hayaang: P ay isang panaguri; x ay isang variable. Pagkatapos: ay ang hanay ng lahat ng mga halaga ng x kung saan ang paghatol na P ay totoo. Maaaring ikonekta ang mga panaguri gamit ang mga lohikal na operator: (AND), (О R) at (N OT) upang bumuo ng mga tambalang panaguri.)) X (P | x (

Relational Tuple Calculus Ang problema ng relational tuple calculus ay ang paghahanap ng mga tuple kung saan totoo ang isang panaguri. Ang calculus ay batay sa mga variable ng tuple. Ang mga variable ng Tuple ay mga variable na ang saklaw ay ang tinukoy na kaugnayan.

Halimbawang Kahilingan: “Pumili ng mga katangian Warehouse no., Address, id. code, petsa, buong pangalan ng customer para sa mga order na may dami> 60 "Request record: (S | R (S) ^ S. quantity> 6 0) Explanation: Expression" S. bilang ng oras ”- ang halaga ng attribute bilang ng oras para sa tuple. Relational Tuple Calculus

Relational calculus ng tuples D ng dalawang uri ng quantifier na ginagamit upang ipahiwatig ang bilang ng mga pagkakataon kung saan dapat ilapat ang panaguri: - existential quantifier (ang simbolo ay "umiiral"): ginagamit sa isang formula na dapat totoo para sa kahit isang pagkakataon; - generality quantifier (simbolo “para sa lahat”): ginagamit sa mga expression na tumutukoy sa lahat ng pagkakataon.

Isang halimbawa ng paggamit ng existential quantifier Student (S) ^ (Sv) (Year of birth (B) ^ (B. name = S. name) ^ B. group = 'TI-31') Ang ibig sabihin ng expression ay: kaugnay ng Taon ng kapanganakan mayroong tuple , na may parehong value para sa attribute ng pangalan bilang value para sa attribute ng pangalan sa kasalukuyang tuple S mula sa Student relation, at ang attribute ng pangkat mula sa tuple B ay may value na 'TI-31'. Isang halimbawa ng paggamit ng generality quantifier (B) (B. group * 'TI-31') Ang ibig sabihin ng expression ay: sa wala sa mga tuple ng kaugnayan Taon ng kapanganakan, ang halaga ng attribute group ay katumbas ng 'TM-31 '. Relational Tuple Calculus

Ang mga libreng variable ay mga tuple variable na hindi binibilang, kung hindi man ay tinatawag silang mga bound variable. Sa relational calculus, ang mga wastong formula ay hindi malabo at walang kahulugan na mga pagkakasunud-sunod. Relational Tuple Calculus

Mga panuntunan para sa pagbuo ng formula sa predicate calculus: 1. Kung ang P ay isang n -ary formula (predicate na may n argumento), t 1, t 2, ..., tn ay mga constant o variable, kung gayon ang P (t 1, t 2 , ..., tn) - isang mahusay na nabuong formula. 2. Kung ang t at t 2 ay mga constant o variable mula sa parehong domain, isa sa mga operator ng paghahambing (<, >=, - =), kung gayon ang t 1 t 2 ay isang mahusay na nabuong formula. 3. Kung F 1, F 2 - mga formula, pagkatapos F 1 F 2 - pagsasama ng mga formula, F 1 F 2 - disjunction, - negation. 4. Kung ang F 1 ay mga formula a na may libreng variable X, kung gayon ang F (X) at F (X) ay mga formula din. F Relational Tuple Calculus

Domain relational calculus Ang mga halaga ng mga variable na ginagamit sa domain relational calculus ay kinuha mula sa mga domain, hindi mula sa mga tuple ng relasyon. Landas: Р (d 1, d 2,…, dn) - panaguri; d 1, d 2,…, dn ay mga variable. Pagkatapos: (d 1, d 2,…, dn | Р (d 1, d 2,…, dn)) ay ang hanay ng lahat ng mga variable ng domain kung saan totoo ang panaguri. Ang expression na R (x, y) ay totoo kung at kung may kaugnayan lamang sa R ​​mayroong isang tuple na may mga halaga ng x at y sa dalawa sa mga katangian nito.

Halimbawa Find: ang mga pangalan ng lahat ng manager na ang suweldo ay lumampas sa UAH 2,500. (Unang pangalan, apelyido, posisyon, suweldo ((apelyido, posisyon, suweldo) posisyon = suweldo ng 'manager'> 2500)) Relational domain calculus

Iba pang mga wika Karagdagang mga kategorya ng mga relational na wika: - batay sa mga pagbabago; - mga graphic na wika; - mga wika ng ikaapat na henerasyon. Mga wikang nakabatay sa pagbabagong-anyo - isang klase ng mga wikang hindi pamamaraang Gumamit ng mga ugnayan upang baguhin ang pinagmumulan ng data sa kinakailangang form y (mga halimbawa: SQUARE, SEQUEL at mga bersyon nito, SQL).

Ang mga graphic na wika ay isang pagguhit o iba pang graphic na pagpapakita ng istruktura ng isang relasyon. Lumilikha ang user ng sample ng gustong resulta, at ibinabalik ng system ang hiniling na data sa tinukoy na format (halimbawa: QBE). Mga wika ng ika-apat na henerasyon: - lumikha ng isang ganap na handa at tukoy sa customer na application gamit ang isang limitadong hanay ng mga utos; - magbigay ng user-friendly na kapaligiran sa pag-unlad. Iba pang mga wika

Itong data model ipinatupad sa maraming umiiral na DBMS , at ngayon ito ay

ang pinakakaraniwan. Pangunahing pakinabang ugnayang diskarte:

isang maliit na hanay ng simple at tumpak na mga konsepto na nagpapahintulot sa iyo na gayahin iba't ibang mga paksa; teoretikal na suporta sa anyo

malakas na mathematical apparatus

set theory at relational algebra;

Pormal na isinasaalang-alang ang modelong ito, na tumutukoy sa mababang antas ng mga modelo ng data, ang mga sumusunod na pangunahing ay nakikilala.

Mga Aspeto: Structural Organization of Data

- ang kahusayan ng pag-iimbak ng data at ang bilis ng kanilang pagproseso ay nakasalalay dito;

mga paraan ng pagbibigay integridad ng datos- upang alisin ang mga kontradiksyon sa pagitan ng magkakaugnay na elemento ng data;

pagmamanipula ng data, i.e.

Structural na organisasyon ng data sa isang relational na modelo

Ang pundasyon ng relational model ay

ang matematikal na konsepto ng isang relasyon.

Ang pisikal na representasyon ng relasyon ay karaniwan dalawang-dimensional na talahanayan.

Ang isang hiwalay na talahanayan ay karaniwang nag-iimbak ng data para sa ilan

object ng impormasyon (IO).

Sa ganitong paraan ng pagbubuo ng data, ang database ay tinatawag na relational.

Mga halimbawa ng mga bagay ng impormasyon

Sa isang relational database table, ang mga column ay tinatawag na fields at tumutugma sila sa mga detalye ng IO, kung saan nilalayon ang itinuturing na talahanayan.

Ang bawat field ay karaniwang binibigyan ng makabuluhang pangalan, at sa isang hiwalay na talahanayan ang mga pangalan ng field ay hindi

dapat ulitin.

Ang mga hilera ng talahanayan para sa pag-iimbak ng data ay tinatawag na mga talaan (o mga tuple).

Ang mga patlang ng isang hiwalay na talaan ay nag-iimbak ng mga halaga ng katangian para sa isang partikular na halimbawa ng itinuturing na IO.

Halimbawang talahanayan para sa pag-iimbak ng data

Kapag bumubuo ng table header, hindi mahalaga ang pagkakasunud-sunod ng mga column.

Tinutukoy ang bilang ng mga column

antas ng relasyon (talahanayan).

Ang unary relation ay may degree 1, at ang binary relation ay may degree 2.

Ang kardinal ng relasyon

sinusukat sa bilang ng mga talaan

Pangunahing (pangunahing) katangian ng isang kaugnayan (mga talahanayan)

1. Ang bawat cell ng relasyon ay naglalaman lamang ng isang elementarya (atomic, indivisible) na halaga.

2. Ang bawat tala ay natatangi, ibig sabihin. hindi pinapayagan ang pagdoble ng mga talaan.

Ito ay sumusunod mula sa kahulugan ng isang talahanayan bilang isang hanay ng mga talaan, at bawat hanay, ayon sa kahulugan, ay binubuo ng iba't ibang elemento.

3. Ang pagkakasunud-sunod ng paglalagay ng mga talaan ay hindi mahalaga, na sumusunod din sa konsepto ng "set".

Kung kailangan mong i-record, maaari mo

order sa pamamagitan ng operasyon

Integridad ng data sa isang relational na modelo

Ang mga kinakailangang ito upang magarantiya ang kawastuhan ng data ay may kasamang dalawang kundisyon:

ang integridad ng mga talahanayan (relasyon);

Nangangailangan ng integridad ng talahanayan

ay ang anumang tala sa talahanayan na pinag-uusapan ay dapat na makilala mula sa anumang iba pang tala.

Ang pinakamababang hanay ng mga katangian na nagbibigay-daan sa hindi malabo

tukuyin ang bawat talaan ng ugnayang pinag-uusapan,

tinatawag na potensyal na susi. Ang susi ay tinatawag na simple kung ito ay binubuo ng isang katangian (patlang).

Halimbawa, ang numero ng nagbabayad ng buwis (TIN) ay maaaring gamitin upang natatanging tukuyin ang kanyang address, apelyido at iba pang personal na data.

Ang isang susi ay tinatawag na composite kung ito ay

nabuo mula sa ilang mga katangian.

Ang isang relasyon ay palaging may kahit isang susi, dahil bilang huling paraan para sa tungkuling ito maaari mong gamitin ang lahat

maraming katangian.

Ang potensyal na susi na pinili para sa hindi malabo na pagkakakilanlan

Tinatawag ang mga talaan ng talahanayan pangunahing susi(Pangunahing Susi - PK).

Bilang bahagi ng pangunahing susi, wala sa mga katangian ang maaaring maglaman ng mga null na halaga (NULL).

Iba pang mga potensyal na susi

maging mga alternatibong susi (AK).

Para sa pangunahing susi, ang pinakamahusay ay

Kinakailangan ng sanggunian

integridad dahil sa katotohanan na

napakadalas ng data para sa

magkakaugnay na impormasyon

bagay (IO) ay naka-imbak sa iba't ibang

Pagtuturo

mga mesa.

(Paghahanda ng RK Codeteli

Department_code

Apelyido

Posisyon

Pangalan

(Departamento ng FК






















1 ng 21

Pagtatanghal sa paksa:

Slide No. 1

Paglalarawan ng Slide:

Slide No. 2

Paglalarawan ng Slide:

Database Sa makitid na kahulugan ng salita, ang database ay isang set ng data na kinakailangan para sa trabaho. Gayunpaman, ang data ay isang abstraction; walang nakakita kailanman ng "data lang"; hindi sila bumangon at hindi umiiral sa kanilang sarili. Ang data ay mga salamin ng mga bagay ang totoong mundo Sa malawak na kahulugan ng salita, ang database ay isang koleksyon ng mga paglalarawan ng mga bagay sa totoong mundo at mga koneksyon sa pagitan ng mga ito, na nauugnay para sa isang partikular na lugar ng aplikasyon.

Slide No. 3

Paglalarawan ng Slide:

Pag-uuri ng mga DBMS mula sa Data Model Ayon sa kaugalian, ang lahat ng DBMS ay inuri ayon sa modelo ng data na pinagbabatayan ng mga ito. Nakaugalian na tukuyin ang: Hierarchical data model Modelo ng data ng network Relational data model Minsan nagdaragdag sila ng modelo ng data batay sa mga baligtad na listahan.

Slide No. 4

Paglalarawan ng Slide:

Relational data model Ang relational database ay isa kung saan ang lahat ng data ay ipinakita sa user sa form hugis-parihaba na mga mesa mga halaga ng data, at lahat ng mga operasyon sa database ay binabawasan sa pagmamanipula ng mga talahanayan. Ang talahanayan ay binubuo ng mga row at column at may pangalan na natatangi sa loob ng database. Sinasalamin ng talahanayan ang uri ng bagay sa totoong mundo, at ang bawat linya nito ay isang partikular na bagay.

Slide No. 5

Paglalarawan ng Slide:

Mga Konsepto ng Database Halimbawa, ang talahanayan ng Bahagi ay naglalaman ng impormasyon tungkol sa lahat ng mga bahagi na nakaimbak sa bodega, at ang mga hilera nito ay mga hanay ng mga halaga ng katangian para sa mga partikular na bahagi. Ang bawat haligi sa isang talahanayan ay isang koleksyon ng mga halaga para sa isang partikular na katangian ng isang bagay. Kaya, ang haligi ng Materyal ay isang hanay ng mga halaga na "Steel", "Tin", "Zinc", "Nickel". Ang column na Dami ay naglalaman ng mga hindi negatibong integer. Ang mga halaga sa column na Timbang ay mga tunay na numero na katumbas ng bigat ng bahagi sa kilo. Ang mga halagang ito ay hindi lumalabas sa manipis na hangin. Ang mga ito ay pinili mula sa hanay ng lahat ng posibleng mga halaga para sa isang katangian ng isang bagay, na tinatawag na isang domain. Kaya, ang mga halaga sa haligi ng materyal ay pinili mula sa hanay ng mga pangalan ng lahat ng posibleng mga materyales - plastik, kahoy, metal, atbp. Samakatuwid, sa column na Material, sa panimula imposibleng lumitaw ang isang value na wala sa kaukulang domain, halimbawa, "tubig" o "buhangin". Ang bawat column ay may pangalan, na karaniwang nakasulat sa tuktok ng mesa. Ito ay dapat na natatangi sa talahanayan, gayunpaman ang iba't ibang mga talahanayan ay maaaring magkaroon ng mga column na may parehong pangalan. Ang anumang talahanayan ay dapat magkaroon ng hindi bababa sa isang column; ang mga hanay ay nakaayos sa talahanayan ayon sa pagkakasunud-sunod ng kanilang mga pangalan noong ito ay nilikha. Hindi tulad ng mga column, walang mga pangalan ang mga row; ang kanilang pagkakasunud-sunod sa talahanayan ay hindi tinukoy, at ang bilang ay hindi lohikal na limitado.

Slide No. 6

Paglalarawan ng Slide:

Slide No. 7

Paglalarawan ng Slide:

Database Table Relationship Ang relasyon sa talahanayan ay mahalagang elemento modelo ng data ng relasyon. Ito ay sinusuportahan ng mga dayuhang key. Isaalang-alang ang isang halimbawa kung saan ang isang database ay nag-iimbak ng impormasyon tungkol sa mga ordinaryong empleyado (ang Employee table) at mga manager (ang Manager table) sa isang organisasyon. Ang pangunahing susi ng talahanayan ng Supervisor ay ang hanay ng Numero. Ang column na Apelyido ay hindi maaaring kumilos bilang pangunahing key, dahil ang dalawang manager na may parehong apelyido ay maaaring gumana sa parehong organisasyon. Ang sinumang empleyado ay nasa ilalim ng isang solong tagapamahala, na dapat na maipakita sa database. Ang Employee table ay naglalaman ng Manager Number column, at ang mga value sa column na ito ay pinili mula sa Number column ng Manager table. Ang column ng Supervisor Number ay isang foreign key sa Employee table.

Slide No. 8

Paglalarawan ng Slide:

Slide No. 9

Paglalarawan ng Slide:

Ang mga talahanayan ay hindi maiimbak at maproseso kung ang database ay hindi naglalaman ng "data tungkol sa data", halimbawa, mga deskriptor para sa mga talahanayan, column, at iba pa. Karaniwang tinutukoy ang mga ito bilang metadata. Ang metadata ay ipinakita din sa tabular form at iniimbak sa isang diksyunaryo ng data. Bilang karagdagan sa mga talahanayan, ang isang database ay maaaring mag-imbak ng iba pang mga bagay tulad ng mga display, ulat, view, at kahit na mga application na gumagana sa database. sistema ng impormasyon hindi sapat para sa database na ipakita lamang ang mga bagay ng totoong mundo. Mahalaga na ang gayong pagmumuni-muni ay hindi malabo at pare-pareho. Sa kasong ito, sinasabing natutugunan ng database ang kundisyon ng integridad. Upang matiyak ang kawastuhan at pare-parehong pagkakapare-pareho ng data, ang ilang mga hadlang ay ipinapataw sa database, na tinatawag na mga hadlang sa integridad.

Slide No. 10

Paglalarawan ng Slide:

Mga Limitasyon sa Pagpapanatili ng Integridad Ang modelong pamanggit ng Codd ay may ilang mga hadlang na ginagamit upang patunayan ang data sa database at upang gawing makabuluhan ang istruktura ng data. Nakaugalian na i-highlight ang mga sumusunod na hadlang: Integridad ng kategorya Reference-level na integridad Mga functional na dependency

Slide No. 11

Paglalarawan ng Slide:

Kategorya at Reference Integrity Mayroong dalawang pangunahing kinakailangan sa integridad na dapat panatilihin sa anumang relational database management system sa mahalagang bahagi ng relational data model. Ang unang kinakailangan ay tinatawag na entity integrity requirement. Ang pangalawang kinakailangan ay tinatawag na referential integrity requirement, na mas kumplikado.

Slide No. 12

Paglalarawan ng Slide:

Slide No. 13

Paglalarawan ng Slide:

Tradisyunal na operasyon Ipinapalagay ng unyon ng dalawang relasyon (C1 = AUB) na ang dalawang one-schematic na relasyon A at B ay ibinibigay sa input. Ang resulta ng unyon ay isang relasyon C na binuo ayon sa parehong pamamaraan, na naglalaman ng lahat ng tuple ng A at lahat ng tuple ng relasyon B. Ang intersection ng dalawang relasyon ( C2 = AUB) ay ipinapalagay sa input ang dalawang one-circuit na relasyon A at B. Sa output, ang isang relasyon ay nilikha ayon sa parehong pamamaraan, na naglalaman lamang ng mga tuple na iyon ng ugnayang A, na kaugnay ng B. Pagbabawas ng dalawang ugnayan (C3 = AB). Ang lahat ng tatlong relasyon ay sumusunod sa parehong pattern. Ang nagreresultang kaugnayan C3 ay kinabibilangan lamang ng mga tuple mula sa A na wala sa kaugnayan B. Produktong Cartesian (C4 = A X B). Ang mahalagang pagkakaiba nito mula sa mga nauna ay ang relasyon sa pagitan ng A at B ay maaaring mabuo ayon sa iba't ibang mga scheme, at ang scheme ng relasyon C4 ay kinabibilangan ng lahat ng mga katangian ng relasyon sa pagitan ng A at B.

Slide No. 14

Paglalarawan ng Slide:

Mga espesyal na operasyon Isinasagawa ang pagpapatakbo ng pagpili sa bawat linya. Ang isang relasyon ay ginagamit bilang input sa operasyon. Ang resulta ng pagpili ay isang bagong kaugnayan, na binuo ayon sa parehong pamamaraan, na naglalaman ng isang subset ng mga tuple ng orihinal na kaugnayan na nakakatugon sa kundisyon ng pagpili. Operation projection. Ang isang relasyon ay ginagamit bilang input sa operasyon. Kasama sa resultang relasyon ang isang subset ng mga katangian ng orihinal. Ang bawat tuple ng orihinal na kaugnayan ay tumutugma sa isang tuple sa nagresultang kaugnayan upang ang mga halaga ng parehong mga katangian ng dalawang tuple na ito ay nag-tutugma. Ngunit sa parehong oras, ang mga duplicate na tuple ay inaalis sa nagreresultang relasyon, at samakatuwid ang cardinality ng resultang relasyon ay maaaring mas mababa kaysa sa cardinality ng orihinal. Ang joint operation ay natural. Dalawang relasyon ang ginagamit bilang input sa operasyon. Sa bawat isa sa mga relasyon, ang isang katangian ay naka-highlight kung saan ang koneksyon ay gagawin. Ang parehong mga katangian ay dapat tukuyin sa parehong domain. Ang resultang schema ng relasyon ay kinabibilangan ng lahat ng katangian ng dalawang relasyon. Pinahihintulutan na sa schema ng resultang relasyon, sa halip na dalawang katangian kung saan isinasagawa ang koneksyon, isa lamang ang kinakatawan. Ang joint operation ay katulad ng produkto ng Cartesian. Operasyon ng dibisyon. Sa input ng operasyon, dalawang ugnayan A at B ang ginagamit. Hayaang ang kaugnayan A, na tinatawag na divisible, ay naglalaman ng mga katangian (A1, A2, ..., An). Relasyon В - divisor - naglalaman ng isang subset ng mga katangian А; ilagay, (A1, A2, ..., Ak), kung saan (k

Slide No. 15

Paglalarawan ng Slide:

Ang mga operasyon ng relational data model ay nagbibigay ng kakayahang arbitraryong manipulahin ang mga relasyon, na nagbibigay-daan sa iyong i-update ang database, gayundin ang pumili ng mga subset ng nakaimbak na data at ipakita ang mga ito sa nais na anyo. hayaan kaming hakbang-hakbang na ilarawan ang proseso ng pagkuha ng resultang kaugnayan.

Slide No. 16

Paglalarawan ng Slide:

Normalisasyon ng mga relasyon Ang isa sa mga pinakamahalagang problema sa disenyo ng isang database schema ay ang pagpili ng mga uri ng mga talaan, upang matukoy ang komposisyon ng kanilang mga katangian. Ang pagpapangkat ng mga katangian ay dapat na makatwiran, i.e. pag-minimize ng pagdoble ng data at pagpapasimple sa pagproseso at pag-update ng mga pamamaraan ng data. Ang mga isyung ito ay unang nalutas nang intuitively. Gayunpaman, maaaring mabigo ang intuwisyon kahit na ang isang nakaranasang espesyalista, kaya bumuo si Codd ng isang apparatus na tinatawag na normalisasyon ng mga relasyon sa loob ng balangkas ng relational data model. Bagama't ang mga ideya ng normalisasyon ay nabuo sa mga tuntunin ng modelo ng relational data, ang mga ito ay pantay na naaangkop sa iba pang mga modelo ng data. Nakilala ni Codd ang tatlong normal na anyo ng mga relasyon. Ang pinakaperpekto sa kanila ay ang pangatlo. Ang isang mekanismo ay iminungkahi na nagpapahintulot sa anumang kaugnayan na mabago sa ikatlong normal na anyo. Sa proseso ng naturang mga pagbabago, maaaring lumitaw ang mga bagong relasyon.

Slide No. 17

Paglalarawan ng Slide:

First Normal Form A ratio ay tinatawag na normalized o binawasan sa unang normal na anyo (1NF) kung ang lahat ng katangian nito ay simple. Ang normalized ratio ay madaling i-normalize. Ang ganitong pagbabago ay maaaring humantong sa pagtaas ng cardinality ng relasyon at pagbabago sa susi. Functional dependency. Hayaang ang X at Y ay dalawang katangian ng ilang ugnayan. Sinasabing ang Y ay gumagana sa X kung sa anumang oras ang bawat halaga ng X ay tumutugma sa hindi hihigit sa isang halaga ng katangiang Y. Ang functional dependence ay maaaring tukuyin bilang mga sumusunod: X> Y. Full functional dependence. Ang isang non-key attribute ay sinasabing functionally fully dependent sa isang composite key kung ito ay functionally dependent sa isang key ngunit hindi functionally dependent sa anumang bahagi ng composite key.

Slide No. 18

Paglalarawan ng Slide:

Pangalawang normal na anyo Ang isang relasyon ay nasa pangalawang normal na anyo kung ito ay nasa unang normal na anyo at ang bawat hindi pangunahing katangian ay ganap na umaasa sa isang pinagsama-samang susi. kumpletong pag-asa sa paggana sa isang pinagsama-samang susi; bukod pa rito ay bumuo ng isa o higit pang mga projection sa isang bahagi ng ang pinagsama-samang susi at mga katangian ay umaasa sa bahaging ito ng susi. Hayaang ang X, Y, Z ay tatlong katangian ng ilang kaugnayan. Sa kasong ito, X> Y at Y> Z, ngunit walang kabaligtaran na pagsusulatan, iyon ay, ang Z ay hindi> o Y ay hindi> X. Pagkatapos, ang Z ay sinasabing palipat-lipat na umaasa sa X.

Paglalarawan ng Slide:

Iba Pang Mga Normal na Anyo Ang unang normal na anyo ay nagbabawal sa mga talahanayan na magkaroon ng hindi atomic, o multivalued, na mga katangian. Gayunpaman, maraming mga sitwasyon sa pagmomodelo na nangangailangan ng mga multivalued na katangian. Halimbawa, ang isang guro sa isang unibersidad ay may pananagutan para sa ilang mga disiplina. Mayroong ilang mga solusyon, ang bawat isa ay may ilang mga disadvantages. Lahat ng mga ito ay nangangailangan ng dagdag na memorya dahil sa pagkakaroon ng mga walang laman na halaga, o dahil sa pangangailangan na magpasok ng kalabisan na data. Ang mga naglalaman ng mga null na halaga ay lumalabag sa kategoryang integridad, dahil ang lahat ng mga katangian na magkasama ay bumubuo ng susi ng talahanayan. Ang mga maliwanag na ugnayan sa pagitan ng mga independiyenteng katangian ay maaaring alisin sa pamamagitan ng pag-aatas sa bawat halaga ng katangian na isama sa bawat iba pang halaga ng katangian sa hindi bababa sa isang linya. Ang isang kundisyon na nagsisiguro na ang mga katangian ay independyente sa pamamagitan ng pag-aatas ng pag-uulit ng mga halaga ay tinatawag na multivalued dependency. Ang multivalued dependence ay kasinghigpit ng functional dependence. Malinaw, dahil nangangailangan sila ng malaking bilang ng mga pag-uulit ng mga halaga ng data, isang mahalagang hakbang sa proseso ng normalisasyon ay ang pag-alis ng mga multivalued na dependency. Ang talahanayan ay may pang-apat na normal na anyo (4NF) kung mayroon itong 3NF at hindi naglalaman ng mga multivalued na dependency. Upang maalis ang ilang iba pang mga anomalya ay iminungkahi ang ilang higit pang mga normal na anyo: ikalimang normal na anyo (5NF), area / key normal na anyo (NFOK), atbp. Gayunpaman, mayroon silang napakalimitadong praktikal na paggamit.

Slide No. 21

Paglalarawan ng Slide:

Konklusyon Dapat bigyang-diin na ang kasalukuyang gawain ay hindi nagbibigay ng isang recipe para sa pagbuo ng isang mahusay na schema ng database. Sa halip, kinikilala nito ang isang problema at ipinapaliwanag kung paano ito malulutas pangkalahatang pananaw... Magbigay praktikal na payo ang mga sumusunod na hakbang ay dapat gawin: Pumili ng isang konseptwal na modelo kung saan ang konseptwal na diagram ay bubuo; Bumuo ng isang tumpak na paglalarawan ng mga semantic na hadlang na sinusuportahan ng napiling DBMS; Bumuo ng isang pagmamapa ng napiling konseptwal na modelo sa isang modelo ng data na sinusuportahan ng DBMS Tukuyin kung ano ang isang magandang schema at ilarawan ang pamamaraan para sa pagbuo nito ...