Жаратылыстану жəне математика факультеті Информатика кафедрасы



жүктеу 1,29 Mb.
Pdf просмотр
бет14/58
Дата19.11.2018
өлшемі1,29 Mb.
#21498
1   ...   10   11   12   13   14   15   16   17   ...   58

7. Қарама-қайшылық емес 
Деректердің бар болуы.Деректер қорындағы кейбір бағандардың əрбір жолда мəні болуы 
керек; бағандағы мұндай жолдар жоқ мəнді қоса алмайды. Мысалға, деректер қорындағы əрбір 
тапсырысқа  тапсырыс  жасаған  сатып  алушы  бар  болуы  керек.  Бұл  деректер  тұтастық  жай 
шартына  кейбір  бағандар  NULL  мəнді  болмауын  талап  етеді.  Бұл  шарт  CREATE  TABLE 
инструкциясының  бөлігі  NOT  NULL  шектеуі  түрінде  беріледі.  Егер  бағанға  NOT  NULL 
шектемесі қойылса, онда бұл шарттың орындалуына ДҚБЖ келесілерді қамтамасыз етеді: 
•  бірде-бір  INSERT  инструкциясында  бағанға  NULL  мəнін  көрсетуге  болмайды,  бұл 
бағанға бар немесе жоқ NULL мəнді жол қосу əрекеті қатені көрсетеді; 
•  бірде-бір  UPDATE  инструкциясында  бағанға  NULL  мəнін  ұсынуге  болмайды,  бұл 
бағанға бар немесе жоқ NULL мəнді жол қосу əрекеті қатені көрсетеді. 
Деректердің  бар  болуының  міндетті  шартының  кемшілігі  оны  кесте  құру  кезінде  беру 
керектігінде. Дайын кестеге NOT NULL шектемесін қоя алмауы көптеген ДҚБЖ-де жоқ мəндер 
ішкі  деңгейде  іске  асырылған.  Кесте  құру  кезінде  қай  баған  NULL  мəнінен  тұратыны,  ал 
қайсысында болмайтыны нақты анықталуы тиіс. 
Мəннің  шарты.  Деректер  қорындағы  əрбір  бағанда  өзінің  домені  бар,  ол  -  берілген 
бағанда  сақталуына  рұқсат  етілетін  мəндер  жиынтығы.  ДҚБЖ-ге  нақты  бір  диапазонға 
кірмейтін мəн жазбасы мұндай бағандарда мүмкін емес. Кесте құру кезінде əрбір бағанға нақты 
бір типті дерек бекітіледі, бағанға осы типті деректер енгізілуін ДҚБЖ қадағалайды. SQL Server 
деректер  дұрыстығына  тексерісті  қамтамасыз  етеді,  қолданушыға  көрсетілген  бағанға  қандай 
деректерді енгізуге болатынын анықтайтын ереже құруына мүмкіндік береді. 
Кестенің тұтастығы. Кестенің алғашқы кілті басқа жолдардағы мəндерге қарағанда əрбір 
жолда  ерекше  мəнге  ие болуы  тиіс.  ДҚБЖ-ге  кестенің  тұтастығын  қамтамасыз  етуін  ұсынуге 
болады. Мұндай тəсілмен жолды өңдеу немесе қосу əрекетінен алғашқы кілт өзінің ерекшелігін 
жоғалтады, қате жайлы хабарлама шығумен аяқталады. 
Кейде  кестенің  алғашқы  кілті  болмайтын  баған  барлық  жолдарда  ерекше  мəн  болуын 
талап    етеді.  Бағанға  ерекшелік  шартын  салып,  кестедегі  ПРОДАВЦЫ    фамилиясынан  екі 
бірдей  фамилияларды  ПРОДАВЦЫ-ды  болдырмаумен  шектейік.  Алғашқы  кілт  бөлігін 
бейнелейтін  немесе  ерекшелік  шарты  салынған  кез  келген  баған  NOT  NULL  шектеуімен 
жариялануы тиіс. 
 
Бақылау сұрақтары: 
1.  Алғашқы кілт дегеніміз не? 
2.  Сыртқы кілт дегеніміз не? 
3.  Мəндер ерекшеліктеріне аңықтама беріңіз. 
4.  Деректердің тұтастығын қамтамасыз ететін стандартты механизмдерді атаңыз. 
5.  FOREIGN KEY мен CHECK шектеулері мүмкін болатын мəндерді анықтаңыз. 
 
Əдебиеттер:[1] 203-212 бет.   [2] 76-78 бет.   [3]108-112 бет.   қ[1] 35-37 бет. 
 
2  кредит сағат. 
Тақырыбы:  
Деректердің тұтастығын қамтамасыз ету
 
Дəріс мазмұны: 
1.  «Деректер тұтастығы» түсінігі 
Сілтемелі  тұтастық.  Реляциялық  деректер  қорында  əрбір  ұрпақ-кесте  жолынан  сыртқы 
кілт  көмегімен  алғашқы  кілті  бар  мəні  сыртқы  кілт  мəніне  тең  аталы-кесте  жолымен 
байланысты.  
Аталық/ұрпақтық қатынас тұтастық сілтемесін бұзатын деректер қорының өзгеруінің төрт 
түрі бар: 
•  жаңа ұрпақ-жолының қосылуы; 
•  ұрпақ-жолдағы сыртқы кілт өңделуі; 
•  аталық-жолдың жойылуы; 
•  ұрпақ-жолдағы алғашқы кілттің өңделуі. 
Функционалды міндет бойынша барлық шектеулерді бірнеше түрге бөлуге болады: 


NOT NULL шектеуі баған деңгейінде іс-əрекет етеді. Ол баған ұяшықтарына NULL мəнін 
беруге тыйым салады. 
PRIMARY KEY шектеуі баған немесе кесте деңгейінде іс-əрекет етеді. Егер алғашқы кілт 
бір  бағаннан  тұрса,  онда  берілген  шектеуді  осы  бағанға  анықтауға  ыңғайлы,  егер  де  кілт 
бірнеше бағаннан тұрса, шектеу барлық кестеге анықталуы тиіс.  
UNIQUE  шектеуі  баған немесе кесте деңгейінде іс-əрекет  етеді.  Егер  ерекше  мəн  болып 
бір  баған  мəні  болса,  берілген  шектеуді  осы  бағанға  анықтау  дұрыс,  егер  де  ерекше  бірнеше 
бағандар комбинациясының мəні болса, онда шектеуді кесте деңгейінде анықтаған дұрыс. 
FOREIGN KEY шектеуі баған немесе кесте деңгейінде іс-əрекет етеді. Егер сыртқы кілт 
бір  бағаннан  тұрса,  берілген  шектеуді  осы  бағанда  анықтаған  дұрыс,  егер  де  кілт  бірнеше 
бағаннан тұрса, онда шектеуді кесте деңгейінде анықтаған дұрыс. Кесте сыртқы кілттер арқылы 
көптеген  басқа  кестелермен  байланысса,  сыртқы  кілттердің  анықтамаларын  жеке  бағандарға 
таратпай, олардың шектемелерін бір орынға жинақтаған ыңғайлы. 
CHECK  шектеуі  кесте  немесе  баған  деңгейінде  əрекет  ете  алады.  Соған  қоса  бұл  - 
доменді  немесе  қабылдауды  анықтайтын  бөлігі  болатын  жалғыз  шектеу  түрі.  Шектеудің  бұл 
түрі  сұрыптау  шарты  ретінде  беріледі.  Деректер  шектеуді  ондағы  көрсетілген  шарттың 
орындалған жағдайында қанағаттандырады. 
Осы  деректер  қорында  анықталған  басқа  шектеулер  арасында  оны  теңестіретін  əрбір 
шектеуге ат берілуі мүмкін. 
Іскерлі  ережелер.  Деректер  қорындағы  ақпараттарды  өңдеу  іскерлік  ережелермен 
шектелуі мүмкін жəне осы өңдеулермен көрсетілетін операцияға бағынады. 
SQL1 стандартында  анықталған, іскерлі ережелердің жүзеге асырылуын деректер қорына 
рұқсат  беруді  жүзеге  асыруға  қолданбалы  программа  жауап  береді.  Оның  көптеген 
кемшіліктері бар: жарыса істеу, жеткіліксіз келісім, сүйемелдеу қиындығы мен күрделілігі жəне 
деректер  қорының  тұтастығының  өзіне  жауапкершілік  жүктеуі.  1986  жылы  ДҚБЖ  Sybase 
триггер  ұғымы  енгізілген,  яғни  реляциялық  деректер  қорына  іскерлік  ережені  қосу  қадамы 
болды. 
Деректер  арасындағы  басқа  арасалмақ.  Деректер  қоры  моделдейтін  сыртқы  əлем 
жағдайы деректер қорында қосымша шектеулер беруі мүмкін. 
Қайшылық  емес.  Көптеген  нақты  іскер  операциялар  деректер  қорында  бірнеше 
өзгерістерді бір уақытта шақырады. Транзакция өңдеу механизмі деректердің қайшылық емес 
шартының орындалуын қамтамасыз етеді. 
 
Бақылау сұрақтары: 
1.  Алғашқы кілт дегеніміз не? 
2.  Сыртқы кілт дегеніміз не? 
3.  Мəндер ерекшеліктеріне аңықтама беріңіз. 
4.  Деректердің тұтастығын қамтамасыз ететін стандартты механизмдерді атаңыз. 
5.  FOREIGN KEY мен CHECK шектеулері мүмкін болатын мəндерді анықтаңыз. 
 
Əдебиеттер:[1] 203-212 бет.   [2] 76-78 бет.   [3]108-112 бет.   қ[1] 35-37 бет. 
 
10 - апта 
1  кредит сағат. 
Тақырыбы: 
Ұсынулар
 
Дəріс мазмұны: 
1.  Ұсынулар. 
2.  Ұсынуларды құру.  
Кестелер  деректер  қорының  құрылымын  жəне  ондағы  ақпараттардың  ұйымдастырылуын 
анықтайды. Бірақ SQL ұсынулар көмегімен деректерге басқаша қарауға мұрсат береді. Ұсыну 
атауы бар таңдау сұранысы деректер қорында сақталады. 
Ұсынулар  (немесе  көрсетулер  -  VIEW)  уақытша,  туынды  (виртуалды)  кестелер  жəне 
деректер қорының объектісі болып есептеледі. Объектіде ақпарат əруақытта сақталмайды, тек 
«көңіл бөлгенде» ғана құрылады, яғни өзінің дербес деректері жоқ. Ұсынулар өзімен өзі бола 


жүктеу 1,29 Mb.

Достарыңызбен бөлісу:
1   ...   10   11   12   13   14   15   16   17   ...   58




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау