Èåðàðõè÷åñêèå ÑÓÁÄ. |
Ïî ìîäåëè äàííûõ Ïî òèïó óïðàâëÿåìîé áàçû äàííûõ ìîæíî âûäåëèòü èåðàðõè÷åñêèå ÑÓÁÄ. Ïîä èåðàðõè÷åñêîé ìîäåëüþ äàííûõ ïîíèìàåòñÿ ìîäåëü, îáúåäèíÿþùàÿ çàïèñè, õðàíèìûå â îáùåé äðåâîâèäíîé ñòðóêòóðå ñ îäíèì êîðíåâûì òèïîì çàïèñè, êîòîðûé èìååò íåñêîëüêî ïîä÷èíåííûõ òèïîâ çàïèñè èëè íå èìååò ñîâñåì. Êàæäûé ïîä÷èíåííûé òèï çàïèñè òàêæå ìîæåò èìåòü íåñêîëüêî ïîä÷èíåííûõ òèïîâ èëè íå èìåòü èõ ñîâñåì. Îñíîâíîé ñòðóêòóðîé, ïîääåðæèâàþùåé èåðàðõè÷åñêîå ïðåäñòàâëåíèå èíôîðìàöèè, ÿâëÿåòñÿ äåðåâî. Äîñòîèíñòâàìè èåðàðõè÷åñêîé ìîäåëè äàííûõ îòíîñÿòñÿ ýôôåêòèâíîå èñïîëüçîâàíèå ïàìÿòè ÝÂÌ è íåïëîõèå ïîêàçàòåëè âðåìåíè âûïîëíåíèÿ îñíîâíûõ îïåðàöèé íàä äàííûìè. Èåðàðõè÷åñêàÿ ìîäåëü äàííûõ óäîáíà äëÿ ðàáîòû ñ èåðàðõè÷åñêè óïîðÿäî÷åííîé èíôîðìàöèåé. Íåäîñòàòêîì èåðàðõè÷åñêîé ìîäåëè ÿâëÿåòñÿ åå ãðîìîçäêîñòü äëÿ îáðàáîòêè èíôîðìàöèè ñ äîñòàòî÷íî ñëîæíûìè ëîãè÷åñêèìè ñâÿçÿìè, à òàêæå ñëîæíîñòü ïîíèìàíèÿ äëÿ îáû÷íîãî ïîëüçîâàòåëÿ. Ïðèìåðû: çàðóáåæíûå ñèñòåìû IMS, PC/Focus, Team-Up è Data Edge, à òàêæå îòå÷åñòâåííûå ñèñòåìû Îêà, ÈÍÝÑ è ÌÈÐÈÑ;
2)Ïðåäëîæåíèå INSERT ÿçûêà SQL. Âñòàâêà åäèíñòâåííîé çàïèñè. Âñòàâêà ìíîæåñòâà çàïèñåé.
INSERT INTO "table_name" ("column1", "column2",..) VALUES ("value1", "value2",...); -äîáàâëåíèå çàïèñåé
Íàïðèìåð: INSERT INTO Store_Information (store_name, Sales, Date) VALUES ('Los Angeles', 900, 'Jan-10-1999');
Èëè: INSERT INTO Store_Information (store_name, Sales, Date)
SELECT store_name, Sales, Date FROM Sales_Information WHERE Year(Date) = 1998 ; - äîáàâëåíèå çàïèñåé â òó ñòðîêó, ãäå ñòîëáåö Year(Date) = 1998
3)Ïðîåêòèðîâàíèå ðåëÿöèîííûõ ÁÄ ñ èñïîëüçîâàíèåì íîðìàëèçàöèè: ïåðâàÿ, âòîðàÿ è òðåòüÿ íîðìàëüíûå ôîðìû.ïðîöåäóðó íîðìàëèçàöèè ìîæíî îõàðàêòåðèçîâàòü êàê ïðîöåäóðó ðàçá. ëîãè÷åñêè íåñâÿçàííîé èíôîðìàöèè íà îòäåëüíûå ïåðåìåííûå îòíîøåíèÿ.Ïåðâàÿ íîðìàëüíàÿ ôîðìà. Îòíîøåíèå R íàõîäèòñÿ â ïåðâîé íîðìàëüíîé ôîðìå (1ÍÔ), åñëè çíà÷åíèÿ êàæäîãî åãî àòðèáóòà ÿâëÿþòñÿ àòîìàðíûìè, ò.å. òàêèìè çíà÷åíèÿìè, êîòîðûå íå ÿâëÿþòñÿ ìíîæåñòâîì çíà÷åíèé èëè ïîâòîðÿþùåéñÿ ãðóïïîé.  îïðåäåëåíèè ðåëÿöèîííîé ìîäåëè Êîääà âñå îòíîøåíèÿ âñåãäà íàõîäÿòñÿ â 1ÍÔ.
Èçáûòî÷íîñòü. Äàííûå ïðàêòè÷åñêè âñåõ ñòîëáöîâ ìíîãîêðàòíî ïîâòîðÿþòñÿ. Ïîâòîðÿþòñÿ è íåêîòîðûå íàáîðû äàííûõ. Ïîòåíöèàëüíàÿ ïðîòèâîðå÷èâîñòü (àíîìàëèè îáíîâëåíèÿ). Âñëåäñòâèå èçáûòî÷íîñòè ìîæíî îáíîâèòü ãðóïïó àòðèáóòîâ â îäíîé ñòðîêå, îñòàâëÿÿ å¸ íåèçìåííîé â äðóãèõ. Ñëåäîâàòåëüíî, ïðè îáíîâëåíèÿõ íåîáõîäèìî ïðîñìàòðèâàòü âñþ òàáëèöó äëÿ íàõîæäåíèÿ è èçìåíåíèÿ âñåõ ïîäõîäÿùèõ ñòðîê. Àíîìàëèè âêëþ÷åíèÿ.  ÁÄ íå ìîæåò áûòü çàïèñàí íîâûé ýëåìåíò, åñëè åãî íåêîòîðîìó àòðèáóòó (èëè íåñêîëüêèì àòðèáóòàì) íå ñîïîñòàâëåíî îïðåäåë¸ííîãî çíà÷åíèÿ. Ìîæíî ïîìåñòèòü íåîïðåäåëåííûå çíà÷åíèÿ â ýòîò àòðèáóò, íî åñëè ïîÿâèòñÿ íóæíûé ýëåìåíò, íå çàáóäåì ëè ìû óäàëèòü ñòðîêó ñ íåîïðåäåëåííûìè çíà÷åíèÿìè?
Àíîìàëèè óäàëåíèÿ (èñêëþ÷åíèÿ). Îáðàòíàÿ ïðîáëåìà âîçíèêàåò ïðè íåîáõîäèìîñòè óäàëåíèÿ âñåõ çíà÷åíèé, ñâÿçàííûõ ñ. Ïðè òàêèõ óäàëåíüÿõ áóäóò óòðà÷åíû âñå ñâåäåíèÿ.
Êàæäûé ôàêò, õðàíèìûé â ÁÄ, äîëæåí õðàíèòüñÿ îäèí-åäèíñòâåííûé ðàç, ïîñêîëüêó äóáëèðîâàíèå ìîæåò ïðèâåñòè (è íà ïðàêòèêå íåïðåìåííî ïðèâîäèò, êàê òîëüêî ïðîåêò ïðèîáðåòàåò ðåàëüíóþ ñëîæíîñòü) ê íåñîãëàñîâàííîñòè ìåæäó êîïèÿìè îäíîé è òîé æå èíôîðìàöèè. Ñëåäóåò èçáåãàòü ëþáûõ íåîäíîçíà÷íîñòåé, à òàêæå èçáûòî÷íîñòè õðàíèìîé èíôîðìàöèè.
Âòîðàÿ íîðìàëüíàÿ ôîðìà. Îòíîøåíèå R íàõîäèòñÿ âî âòîðîé íîðìàëüíîé ôîðìå (2ÍÔ), åñëè íèêàêèå íåêëþ÷åâûå àòðèáóòû íå ÿâëÿþòñÿ ôóíêöèîíàëüíî çàâèñèìûìè ëèøü îò ÷àñòè êëþ÷à. Êàæäûé íåêëþ÷åâîé ñòîëáåö â òàáëèöå äîëæåí óíèêàëüíî èäåíòèôèöèðñÿ ïî ïåðâè÷íîìó êëþ÷ó Òàêèì îáðàçîì, 2ÍÔ ìîæåò îêàçàòüñÿ íàðóøåíà òîëüêî â òîì ñëó÷àå, êîãäà êëþ÷ ñîñòàâíîé. Ïîëíàÿ ôóíêöèîíàëüíàÿ çàâèñèìîñòü Ôóíêöèîíàëüíàÿ çàâèñèìîñòü R.X (r) R.Y íàçûâàåòñÿ ïîëíîé, åñëè àòðèáóò Y íå çàâèñèò ôóíêöèîíàëüíî îò ëþáîãî òî÷íîãî ïîäìíîæåñòâà X. Òðàíçèòèâíàÿ ôóíêöèîíàëüíàÿ çàâèñèìîñòü Ôóíêöèîíàëüíàÿ çàâèñèìîñòü R.X -> R.Y íàçûâàåòñÿ òðàíçèòèâíîé, åñëè ñóùåñòâóåò òàêîé àòðèáóò Z, ÷òî èìåþòñÿ ôóíêöèîíàëüíûå çàâèñèìîñòèR.X -> R.Z è R.Z -> R.Y è îòñóòñòâóåò ôóíêöèîíàëüíàÿ çàâèñèìîñòü R.Z --> R.X.(Ïðè îòñóòñòâèè ïîñëåäíåãî òðåáîâàíèÿ ìû èìåëè áû "íåèíòåðåñíûå" òðàíçèòèâíûå çàâèñèìîñòè â ëþáîì îòíîøåíèè, îáëàäàþùåì íåñêîëüêèìè êëþ÷àìè.) Íåêëþ÷åâîé àòðèáóò Íåêëþ÷åâûì àòðèáóòîì íàçûâàåòñÿ ëþáîé àòðèáóò îòíîøåíèÿ, íå âõîäÿùèé â ñîñòàâ êëþ÷à (â ÷àñòíîñòè, ïåðâè÷íîãî). Âçàèìíî íåçàâèñèìûå àòðèáóòû Äâà èëè áîëåå àòðèáóòà âçàèìíî íåçàâèñèìû, åñëè íè îäèí èç ýòèõ àòðèáóòîâ íå ÿâëÿåòñÿ ôóíêöèîíàëüíî çàâèñèìûì îò äðóãèõ. Âòîðàÿ íîðìàëüíàÿ ôîðìà (ïðåäïîëàãàåòñÿ, ÷òî åäèíñòâåííûì êëþ÷îì îòíîøåíèÿ ÿâëÿåòñÿ ïåðâè÷íûé êëþ÷) Îòíîøåíèå R íàõîäèòñÿ âî âòîðîé íîðìàëüíîé ôîðìå (2NF) â òîì è òîëüêî â òîì ñëó÷àå, êîãäà íàõîäèòñÿ â 1NF, è êàæäûé íåêëþ÷åâîé àòðèáóò ïîëíîñòüþ çàâèñèò îò ïåðâè÷íîãî êëþ÷à. Åñëè äîïóñòèòü íàëè÷èå íåñêîëüêèõ êëþ÷åé, òî îïðåäåëåíèå ïðèìåò ñëåäóþùèé âèä: Îòíîøåíèå R íàõîäèòñÿ âî âòîðîé íîðìàëüíîé ôîðìå (2NF) â òîì è òîëüêî â òîì ñëó÷àå, êîãäà îíî íàõîäèòñÿ â 1NF, è êàæäûé íåêëþ÷åâîé àòðèáóò ïîëíîñòüþ çàâèñèò îò êàæäîãî êëþ÷à R.
Òðåòüÿ íîðìàëüíàÿ ôîðìà. Êðîìå óäîâëåòâîðåíèÿ òðåáîâàíèÿì âòîðîé íîðìàëüíîé ôîðìû, êàæäûé íåêëþ÷åâîé ñòîëáåö òàáëèöû äîëæåí áûòü íåçàâèñèìûì îò äðóãèõ íåêëþ÷åâûõ ñòîëáöîâ.Òðåòüÿ íîðìàëüíàÿ ôîðìà. (îïðåäåëåíèå äàåòñÿ â ïðåäïîëîæåíèè ñóùåñòâîâàíèÿ åäèíñòâåííîãî êëþ÷à.) Îòíîøåíèå R íàõîäèòñÿ â òðåòüåé íîðìàëüíîé ôîðìå (3NF) â òîì è òîëüêî â òîì ñëó÷àå, åñëè íàõîäèòñÿ â 2NF è êàæäûé íåêëþ÷åâîé àòðèáóò íåòðàíçèòèâíî çàâèñèò îò ïåðâè÷íîãî êëþ÷à. Åñëè îòêàçàòüñÿ îò òîãî îãðàíè÷åíèÿ, ÷òî îòíîøåíèå îáëàäàåò åäèíñòâåííûì êëþ÷îì, òî îïðåäåëåíèå 3NF ïðèìåò ñëåäóþùóþ ôîðìó: Îòíîøåíèå R íàõîäèòñÿ â òðåòüåé íîðìàëüíîé ôîðìå (3NF) â òîì è òîëüêî â òîì ñëó÷àå, åñëè íàõîäèòñÿ â 1NF, è êàæäûé íåêëþ÷åâîé àòðèáóò íå ÿâëÿåòñÿ òðàíçèòèâíî çàâèñèìûì îò êàêîãî-ëèáî êëþ÷à R. Íà ïðàêòèêå òðåòüÿ íîðìàëüíàÿ ôîðìà ñõåì îòíîøåíèé äîñòàòî÷íà â áîëüøèíñòâå ñëó÷àåâ, è ïðèâåäåíèåì ê òðåòüåé íîðìàëüíîé ôîðìå ïðîöåññ ïðîåêòèðîâàíèÿ ðåëÿöèîííîé áàçû äàííûõ îáû÷íî çàêàí÷èâàåòñÿ. Îäíàêî èíîãäà ïîëåçíî ïðîäîëæèòü ïðîöåññ íîðìàëèçàöèè.
 çàêëþ÷åíèå ñëåäóåò ïîä÷åðêíóòü, ÷òî óðîâåíü íîðìàëèçàöèè ïåðåìåííîé îòíîøåíèÿ îïðåäåëÿåòñÿ ñåìàíòèêîé, à íå êîíêðåòíûì çíà÷åíèåì ýòîé ïåðåìåííîé â îïðåäåëåííûé ìîìåíò âðåìåíè. Èíà÷å ãîâîðÿ, ïî êîíêðåòíîìó çíà÷åíèþ íåêîòîðîé ïåðåìåííîé îòíîøåíèÿ íåâîçìîæíî îïðåäåëèòü, íàõîäèòñÿ ëè îíà, íàïðèìåð, â ÇÍÔ. Äëÿ ýòîãî íåîáõîäèìî òàêæå çíàòü, êàêèå ôóíêöèîíàëüíûå çàâèñèìîñòè îïðåäåëåíû â ðàññìàòðèâàåìîé ïåðåìåííîé îòíîøåíèÿ. Ñëåäóåò òàêæå îòìåòèòü, ÷òî äàæå çíàÿ î çàâèñèìîñòÿõ â íåêîòîðîé ïåðåìåííîé îòíîøåíèÿ, íåëüçÿ íà îñíîâàíèè êîíêðåòíîãî åå çíà÷åíèÿ äîêàçàòü, ÷òî îíà íàõîäèòñÿ â ÇÍÔ. Ñàìîå ëó÷øåå, ÷åãî ìîæíî äîñòè÷ü â ïîäîáíîì ñëó÷àå, — ýòî ëèøü ïðîäåìîíñòðèðîâàòü, ÷òî äàííîå êîíêðåòíîå çíà÷åíèå íå íàðóøàåò íèêàêèõ çàâèñèìîñòåé, è, åñëè ýòî òàê, âûñêàçàòü ïðåäïîëîæåíèå î òîì, ÷òî ðàññìàòðèâàåìîå çíà÷åíèå ïåðåìåííîé îòíîøåíèÿ íå ïðîòèâîðå÷èò ãèïîòåçå î åå ïðèíàäëåæíîñòè ê ÇÍÔ. Îäíàêî ñàì ýòîò ôàêò íå ãàðàíòèðóåò, ÷òî ïðåäëîæåííàÿ ãèïîòåçà âåðíà.
Ñåðèÿ ñîîáùåíèé "Áàçû äàííûõ":
×àñòü 1 - Ôàéëîâûå ñèñòåìû. Íàçíà÷åíèå ôàéëîâûõ ñèñòåì.
×àñòü 2 - Îñîáåííîñòè îðãàí õðàíåíèÿ äàííûõ
...
×àñòü 37 - Ñåòåâûå ñèñòåìû (ñèñòåìû, ðåàëèçóþùèå ñåòåâóþ ìîäåëü äàííûõ).
×àñòü 38 - 2)Ïîíÿòèå èíäåêñà. Ïðåäëîæåíèÿ ÿçûêà SQL CREATE INDEX è DROP INDEX. Ïàðàìåòð UNIQUE.
×àñòü 39 - Èåðàðõè÷åñêèå ÑÓÁÄ.
×àñòü 40 - Ïðåäñòàâëåíèÿ. Îïðåäåëåíèå ïðåäñòàâëåíèÿ. SQL ïðåäëîæåíèÿ CREATE VIEW è DROP VIEW. Îñîáåííîñòè îïåðàöèé
×àñòü 41 - Ïîíÿòèå öåíòðà îáðàáîòêè äàííûõ (ÖÎÄ). Íàçíà÷åíèå ÖÎÄ. Ñòðóêòóðà è îñíîâíûå òåõíè÷åñêèå ýëåìåíòû ÖÎÄ.
...
×àñòü 43 - Ìåòîä âñïîìîãàòåëüíîé òàáëèöû äëÿ ñëó÷àÿ ïðîèçâîëüíîãî ãðàôà. Îòëè÷èÿ îò ñëó÷àÿ ìîäåëèðîâàíèÿ èåðàðõèé
×àñòü 44 - Îáúåêòíî-îðèåíòèðîâàííàÿ ìîäåëü è ðåëÿöèîííàÿ ìîäåëü. Ñõîäñòâî è îòëè÷èÿ.
×àñòü 45 - Èñïîëüçîâàíèå «êîîðäèíàòíîãî» ìåòîäà äëÿ ìîäåëèðîâàíèÿ èåðàðõèé è ïðîèçâîëüíûõ ãðàôîâ. Åãî äîñòîèíñòâà è
| Ðóáðèêè: |
| Êîììåíòèðîâàòü | « Ïðåä. çàïèñü — Ê äíåâíèêó — Ñëåä. çàïèñü » | Ñòðàíèöû: [1] [Íîâûå] |