Ìåòîä âñïîìîãàòåëüíîé òàáëèöû äëÿ ñëó÷àÿ ïðîèçâîëüíîãî ãðàôà. Îòëè÷èÿ îò ñëó÷àÿ ìîäåëèðîâàíèÿ èåðàðõèé |
2)Ñèíõðîíèçàöèÿ è ðåïëèêàöèÿ äàííûõ. Ìåñòî òåõíîëîãèè XML â ñòðóêòóðå ñðåäñòâ óïðàâëåíèÿ äàííûìè.
Ðåïëèêàöèÿ - ñëèÿíèå èëè ÑÈÍÕÐÎÍÈÇÀÖÈß äàííûõ, íàêîïëåííûõ ïðè íåçàâèñèìîé ðàáîòå ñ áàçîé â äâóõ èëè áîëåå îôèñàõ èëè ñåðâèñíûõ öåíòðàõ îäíîé êîìïàíèè, êîòîðûå íå ñâÿçàíû ìåæäó ñîáîé êîìïüþòåðíîé ñåòüþ. Ðàáîòà ñ áàçîé â òàêèõ îôèñàõ ìîæåò âåñòèñü íåçàâèñèìî äðóã îò äðóãà.  êàæäîì îôèñå ìîæåò áûòü ñâîÿ ëîêàëüíàÿ ñåòü èëè âñåãî îäèí êîìïüþòåð. Ðåïëèöèðîâàòü îçíà÷àåò òèðàæèðîâàòü. Åñëè ó÷ðåæäåíèå ðàñïîëàãàåò ñåòüþ, òîãäà öåëåñîîáðàçíî èìåòü îñíîâíóþ êîïèþ áàçû äàííûõ (ãëàâíàÿ ðåïëèêà) â ãëàâíîì ïîäðàçäåëåíèè ôèðìû è íåñêîëüêî åe êîïèé (ðåïëèê) â äðóãèõ ïîìåùåíèÿõ/íà äðóãèõ òåððèòîðèÿõ. Ïîëüçîâàòåëè áàç äàííûõ íà äðóãèõ òåððèòîðèÿõ â ïðîöåññå ðàáîòû (íàïðèìåð, â ðåçóëüòàòå ðåàëèçàöèè/ïðèîáðåòåíèÿ èçäåëèé, ïåðå÷åíü êîòîðûõ ñîäåðæèò áàçà äàííûõ) äåëàþò èçìåíåíèÿ òàáëèö â ñâîèõ êîïèÿõ (ðåïëèêàõ). Ïîçäíåå (ïåðèîäè÷åñêè) êàæäûé äîëæåí âíåñòè èì ñäåëàííûå èçìåíåíèÿ â ãëàâíóþ ðåïëèêó è ïîëó÷èòü èíôîðìàöèþ îá èçìåíåíèÿõ, ñäåëàííûõ äðóãèìè ïîëüçîâàòåëÿìè. Ýòî ïðîöåññ ñèíõðîíèçàöèè - ïðèâåäåíèå ðåïëèêàöèîííîãî íàáîðà â ñîñòîÿíèå, êîãäà ðåïëèêè îäèíàêîâû. HTML, DHMTL - Ôîðìàò áåç ñòðóêòóðû CSS - Ëó÷øå ôîðìàò, íåò ñòðóêòóðû XML - Åñòü ñòðóêòóðà, íåò ôîðìàòà XSL - Ôîðìàò äëÿ ñòðóêòóðû DOM - Âñå âìåñòå XML - ñîçäàí äëÿ ðåøåíèÿ ïðîáëåì, ñâÿçàííûõ ñ îãðàíè÷åíèÿìè HTML. Ýòî ìåòàÿçûê ïðåäíàçíà÷åííûé äëÿ îïðåäåëåíèÿ íîâûõ ÿçûêîâ, êîòîðûå ìîæíî èñïîëüçîâàòü äëÿ îáìåíà äàííûìè
ßçûê ñ âîçìîæíîñòÿìè ðàñøèðåííîé ðàçìåòêè (XML) “XML – ýòî ñòàíäàðòíûé ÿçûê, êîòîðûé èñïîëüçóåòñÿ äëÿ ñòðóêòóðèðîâàíèÿ è îïðåäåëåíèÿ äàííûõ â âèäå, ïðèåìëåìîì äëÿ ðàçëè÷íûõ ïðèëîæåíèé” Ïîäâèä ñòàíäàðòà ISO SGML Êîðî÷å è ïðîùå Îïòèìèçèðîâàí äëÿ WWW XML è HTML ïîõîæè è äîïîëíÿþò äðóã äðóãà HTML ìîæåò èñïîëüçîâàòüñÿ äëÿ ïîêàçà XML äîêóìåíòîâ XML È HTML Èñïîëüçîâàíèå è ñòðóêòóðà HTML – äëÿ ïðåäñòàâëåíèÿ, ìåíåå ñòðóêòóðèðîâàí XML – äëÿ äàííûõ, áîëåå ñòðóêòóðèðîâàí Ðàñøèðÿåìîñòü Èìåíà HTML ýëåìåíòîâ è àòòðèáóòîâ – ôèêñèðîâàííûå Èìåíà XML ýëåìåíòîâ è àòòðèáóòîâ âïîëíå ðàñøèðÿåìû, ÷òî äåëàåò XML ïðåäïî÷òèòåëüíûì äëÿ äàííûõ
XML (àíãë. eXtensible Markup Language — ðàñøèðÿåìûé ÿçûê ðàçìåòêè; ïðîèçíîñèòñÿ [ýêñ-ýì-ý́ë]) — ðåêîìåíäîâàííûé Êîíñîðöèóìîì Âñåìèðíîé ïàóòèíû ÿçûê ðàçìåòêè, ôàêòè÷åñêè ïðåäñòàâëÿþùèé ñîáîé ñâîä îáùèõ ñèíòàêñè÷åñêèõ ïðàâèë. XML — òåêñòîâûé ôîðìàò, ïðåäíàçíà÷åííûé äëÿ õðàíåíèÿ ñòðóêòóðèðîâàííûõ äàííûõ (âçàìåí ñóùåñòâóþùèõ ôàéëîâ áàç äàííûõ), äëÿ îáìåíà èíôîðìàöèåé ìåæäó ïðîãðàììàìè, à òàêæå äëÿ ñîçäàíèÿ íà åãî îñíîâå áîëåå ñïåöèàëèçèðîâàííûõ ÿçûêîâ ðàçìåòêè (íàïðèìåð, XHTML), èíîãäà íàçûâàåìûõ ñëîâàðÿìè. XML ÿâëÿåòñÿ óïðîù¸ííûì ïîäìíîæåñòâîì ÿçûêà SGML.
Öåëüþ ñîçäàíèÿ XML áûëî îáåñïå÷åíèå ñîâìåñòèìîñòè ïðè ïåðåäà÷å ñòðóêòóðèðîâàííûõ äàííûõ ìåæäó ðàçíûìè ñèñòåìàìè îáðàáîòêè èíôîðìàöèè, îñîáåííî ïðè ïåðåäà÷å òàêèõ äàííûõ ÷åðåç Èíòåðíåò. Ñëîâàðè, îñíîâàííûå íà XML (íàïðèìåð, RDF, RSS, MathML, XHTML, SVG), ñàìè ïî ñåáå ôîðìàëüíî îïèñàíû, ÷òî ïîçâîëÿåò ïðîãðàììíî èçìåíÿòü è ïðîâåðÿòü äîêóìåíòû íà îñíîâå ýòèõ ñëîâàðåé, íå çíàÿ èõ ñåìàíòèêè, òî åñòü íå çíàÿ ñìûñëîâîãî çíà÷åíèÿ ýëåìåíòîâ. Âàæíîé îñîáåííîñòüþ XML òàêæå ÿâëÿåòñÿ ïðèìåíåíèå òàê íàçûâàåìûõ ïðîñòðàíñòâ èì¸í (àíãë. namespace).
3)Îïåðàòîð SQL ALTER äëÿ âíåñåíèÿ èçìåíåíèé â õðàíèìûå ïðîöåäóðû è òðèããåðû.
Õðàíèìàÿ ïðîöåäóðà — îáúåêò áàçû äàííûõ, ïðåäñòàâëÿþùèé ñîáîé íàáîð SQL-èíñòðóêöèé, êîòîðûé êîìïèëèðóåòñÿ îäèí ðàç è õðàíèòñÿ íà ñåðâåðå. Õðàíèìûå ïðîöåäóðû ðàñøèðÿþò ñòàíäàðòíûå âîçìîæíîñòè ÑÓÁÄ çà ñ÷¸ò ïîääåðæêè ìåõàíèçìîâ ôóíêöèè îáåñïå÷åíèÿ öåëîñòíîñòè äàííûõ, â òîì ÷èñëå ñåìàíòè÷åñêîé, à òàêæå áåçîïàñíîñòü äàííûõ. Õðàíèìûå ïðîöåäóðû ïèøóòñÿ íà ñïåöèàëüíîì âñòðîåííîì ÿçûêå ïðîãðàììèðîâàíèÿ, îíè ìîãóò âêëþ÷àòü ëþáûå îïåðàòîðû SQL, à òàêæå âêëþ÷àþò íåêîòîðûé íàáîð îïåðàòîðîâ, óïðàâëÿþùèõ õîäîì âûïîëíåíèÿ ïðîãðàìì Õðàíèìûå ïðîöåäóðû ÿâëÿþòñÿ îáúåêòàìè ÁÄ. Êàæäàÿ õðàíèìàÿ ïðîöåäóðà êîìïèëèðóåòñÿ ïðè ïåðâîì âûïîëíåíèè  ïðîöåññå êîìïèëÿöèè ñòðîèòñÿ îïòèìàëüíûé ïëàí âûïîëíåíèÿ ïðîöåäóðû. Îïèñàíèå ïðîöåäóðû ñîâìåñòíî ñ ïëàíîì åå âûïîëíåíèÿ õðàíèòñÿ â ñèñòåìíûõ òàáëèöàõ ÁÄ.
Îïåðàòîð CREATE PROCEDURE ñîçäàåò ïðîöåäóðó ñ óêàçàííûì èìåíåì. Ïðîöåäóðà ìîæåò áûòü ñîçäàíà òîëüêî â òåêóùåé áàçå äàííûõ, çà èñêëþ÷åíèåì âðåìåííûõ ïðîöåäóð, êîòîðûå ñîçäàþòñÿ â tempdb. Äëÿ ñîçäàíèÿ âðåìåííûõ ïðîöåäóð ñëåäóåò íà÷èíàòü åå èìÿ ñ '#' èëè '##'. Äëèíà èìåíè õðàíèìîé ïðîöåäóðû âìåñòå ñ ## íå ìîæåò ïðåâûøàòü 20 ñèìâîëîâ. Îäíà ïðîöåäóðà ìîæåò âûçûâàòü äðóãóþ ïðîöåäóðó, óðîâåíü âëîæåííîñòè íå ìîæåò ïðåâûøàòü 16, òåêóùèé óðîâåíü âëîæåííîñòè ìîæíî óçíàòü èç ãëîáàëüíîé ïåðåìåííîé @@NESTLEVEL.
Ïîëüçîâàòåëü ìîæåò ñîçäàâàòü ñâîè ñèñòåìíûå ïðîöåäóðû; îíè íà÷èíàþòñÿ ñ ñèìâîëîâ sp_. Ïðè ïîïûòêå âûïîëíåíèÿ òàêîé ïðîöåäóðû îíà ñíà÷àëà èùåòñÿ â òåêóùåé áàçå äàííûõ, â ñëó÷àå æå íåóäà÷è - â áàçå äàííûõ master. Òàáëèöû, èñïîëüçóåìûå â ñèñòåìíîé ïðîöåäóðå, îïðåäåëÿåìîé ïîëüçîâàòåëåì, òàêæå ñíà÷àëà îòûñêèâàþòñÿ â òåêóùåé áàçå äàííûõ, è åñëè ýòî íå óäàëîñü - â áàçå äàííûõ master.
Òðè́ããåð — ýòî õðàíèìàÿ ïðîöåäóðà îñîáîãî òèïà, êîòîðóþ ïîëüçîâàòåëü íå âûçûâàåò íåïîñðåäñòâåííî, à èñïîëíåíèå êîòîðîé îáóñëîâëåíî íàñòóïëåíèåì îïðåäåëåííîãî ñîáûòèÿ (äåéñòâèåì) — ïî ñóòè äîáàâëåíèåì INSERT èëè óäàëåíèåì DELETE ñòðîêè â çàäàííîé òàáëèöå, èëè ìîäèôèêàöè UPDATE äàííûõ â îïðåäåëåííîì ñòîëáöå çàäàííîé òàáëèöû ðåëÿöèîííîé áàçû äàííûõ. Ôàêòè÷åñêè òðèããåð — ýòî ñïåöèàëüíûé âèä õðàíèìîé ïðîöåäóðû, êîòîðóþ SQL Server âûçûâàåò ïðè âûïîëíåíèè îïåðàöèé ìîäèôèêàöèè ñîîòâåòñòâóþùèõ òàáëèö.Òðèããåð àâòîìàòè÷åñêè àêòèâèçèðóåòñÿ ïðè âûïîëíåíèè îïåðàöèè, ñ êîòîðîé îí ñâÿçàí.Òðèããåðû ñâÿçûâàþòñÿ ñ îäíîé èëè íåñêîëüêèìè îïåðàöèÿìè ìîäèôèêàöèè íàä îäíîé òàáëèöåé.
CREATE TRIGGER [owner.]trigger_name
ON [owner.]table_name
FOR {INSERT, UPDATE, DELETE}
[WITH ENCRYPTION]
AS sql_statements
Òðèããåðû èñïîëíÿþòñÿ ïîñëå òîãî, êàê èñïîëíåíû êàñêàäíûå äåéñòâèÿ (AFTER) èëè äî èñïîëíåíèÿ êàñêàäíûõ äåéñòâèé (INSTEAD OF); Åñëè ïðîâåðêà âûÿâèëà íåîáõîäèìîñòü îòìåíû äåéñòâèÿ, òî òàêóþ îòìåíó ìîæíî âûïîëíèòü íåïîñðåäñòâåííî èç òåëà òðèããåðà (ROLLBACK TRANSACTION); Â òåëå òðèããåðà ìîæíî èñïîëüçîâàòü ïñåâäî-òàáëèöû inserted è deleted, ñîäåðæàùèå èíôîðìàöèþ îá èçìåíåííûõ çàïèñÿõ; Èç òåëà òðèããåðà ìîæíî âûçûâàòü äðóãèå ïðîöåäóðû è ôóíêöèè.
Êîãäà òðèããåð ñðàáàòûâàåò è íà÷èíàåò âûïîëíÿòüñÿ, âî âðåìÿ åãî âûïîëíåíèÿ ñóùåñòâóþò äâå ñïåöèàëüíûå òàáëèöû - INSERTED è DELETED.  íèõ íàõîäÿòñÿ çàïèñè, ñîîòâåòñòâåííî äîáàâëÿåìûå èëè óäàëÿåìûå. Ãëîáàëüíàÿ ïåðåìåííàÿ @@ROWCOUNT óêàçûâàåò íà ÷èñëî çàïèñåé, ó÷àñòâóþùèõ â îïåðàöèÿõ ñ äàííûìè. ALTER TABLE äàåò âîçìîæíîñòü èçìåíèòü ñòðóêòóðó ñóùåñòâóþùåé òàáëèöû. Îäèíî÷íàÿ èíñòðóêöèÿ ALTER TABLE ìîæåò âûïîëíèòü ìíîæåñòâåííûå äîáàâëåíèÿ è óäàëåíèÿ. Èìåíîâàíèå îãðàíè÷åíèÿ ñòîëáöà ôàêóëüòàòèâíî. Åñëè èìÿ íå îïðåäåëåíî, InterBase íàçíà÷àåò ñãåíåðèðîâàííîå ñèñòåìîé èìÿ. Ïðèñâîåíèå îïèñàòåëüíî èìåíè ìîæåò cäåëàòü îãðàíè÷åíèå ïðîùå äëÿ ïîèñêà, èçìåíåíèÿ èëè óäàëåíèÿ, à òàê æå ïðîùå äëÿ ïîèñêà, êîãäà ýòî èìÿ ïîÿâëÿåòñÿ â ñîîáùåíèÿõ îá îøèáêàõ íàðóøåíèÿ îãðàíè÷åíèÿ.
ALTER TRIGGER èçìåíÿåò îïðåäåëåíèå ñóùåñòâóþùåãî òðèããåðà. Åñëè êàêèå-ëèáî àðãóìåíòû èíñòðóêöèè ALTER TRIGGER ïðîïóùåíû, òîãäà îíè, ïî óìîë÷àíèþ, ïðèíèìàþò òåêóùèå çíà÷åíèÿ, êîòîðûå îïðåäåëåíû èíñòðóêöèåé CREATE TRIGGER èëè ïîñëåäóþùåé ALTER TRIGGER.
ALTER TRIGGER ìîæåò èçìåíèòü:
Òîëüêî èíôîðìàöèþ çàãîëîâêà, çàêëþ÷åííóþ â activation status òðèããåðà, when it performs its actions, ñîáûòèå, êîòîðîå fires òðèããåð è ïîðÿäîê, â êîòîðîì òðèããåðû fires.
Òîëüêî èíôîðìàöèþ òåëà: èíñòðóêöèè êîòîðûå ñëåäóþò çà ïðåäëîæåíèåì AS.
Èíôîðìàöèþ çàãîëîâêà è òåëà òðèããåðà.  ýòîì ñëó÷àå íîâîå îïðåäåëåíèå òðèããåðà çàìåíÿåò ñòàðîå îïðåäåëåíèå.
Òðèããåð ìîæåò áûòü èçìåíåí åãî ñîçäàòåëåì è ïîëüçîâàòåëåì SYSDBA.
Îáðàòèòå âíèìàíèå: Èçìåíåíèå òðèããåðà îïðåäåëåíî àâòîìàòè÷åñêè äëÿ CHECK îãðàíè÷åíèÿ òàáëèöû, èñïîëüçóéòå ALTER TABLE, ÷òîáû èçìåíèòü îïðåäåëåíèå îãðàíè÷åíèÿ.
ALTER TRIGGER name
[ACTIVE | INACTIVE]
[{BEFORE | AFTER} {DELETE | INSERT | UPDATE}]
[POSITION number]
[AS <trigger_body>] [terminator]Àðãóìåíò
Ñåðèÿ ñîîáùåíèé "Áàçû äàííûõ":
×àñòü 1 - Ôàéëîâûå ñèñòåìû. Íàçíà÷åíèå ôàéëîâûõ ñèñòåì.
×àñòü 2 - Îñîáåííîñòè îðãàí õðàíåíèÿ äàííûõ
...
×àñòü 41 - Ïîíÿòèå öåíòðà îáðàáîòêè äàííûõ (ÖÎÄ). Íàçíà÷åíèå ÖÎÄ. Ñòðóêòóðà è îñíîâíûå òåõíè÷åñêèå ýëåìåíòû ÖÎÄ.
×àñòü 42 - Ïðåäëîæåíèå SELECT FOR XML. Ïàðàìåòðû RAW, AUTO, EXPLICIT. Ïàðàìåòð XMLDATA è åãî íàçíà÷åíèå.
×àñòü 43 - Ìåòîä âñïîìîãàòåëüíîé òàáëèöû äëÿ ñëó÷àÿ ïðîèçâîëüíîãî ãðàôà. Îòëè÷èÿ îò ñëó÷àÿ ìîäåëèðîâàíèÿ èåðàðõèé
×àñòü 44 - Îáúåêòíî-îðèåíòèðîâàííàÿ ìîäåëü è ðåëÿöèîííàÿ ìîäåëü. Ñõîäñòâî è îòëè÷èÿ.
×àñòü 45 - Èñïîëüçîâàíèå «êîîðäèíàòíîãî» ìåòîäà äëÿ ìîäåëèðîâàíèÿ èåðàðõèé è ïðîèçâîëüíûõ ãðàôîâ. Åãî äîñòîèíñòâà è
| Ðóáðèêè: |
| Êîììåíòèðîâàòü | « Ïðåä. çàïèñü — Ê äíåâíèêó — Ñëåä. çàïèñü » | Ñòðàíèöû: [1] [Íîâûå] |