қайта ұйымдастыру
амалы МБ-ың
Мәліметтері арасында бос жады қалдырылмаған көшірмесін алуға мүмкіндік
береді. Қайта ұйымдастыру орындалу қажеттілігін қолдану жағдайларына
сәйкес анықтайтын МБ-на әкімшілік етіп жүрген маман. Бұл амалдың
орындалу себептері болып МБ-на жаңа жазбалар енгізу және жою белсенділігі,
жадыны үлестіру қателіктері, Мәліметтерді ұйымдастыруда таңдалған
әдістердің тиімсіздігі болып келеді.
МБ-ың біраз қолданыста болған кезеңі өткен соң ақпараттық жүйенің
ішінде болған өзгерістерге сәйкес МБ-да қабылданған шарттар өзгеруі мүмкін.
Бұл жағдайда МБ әкімгері (администратор)
қайта құрылымдау
амалын
жүргізуге шешім қабылдауы мүмкін. Бұл амал орындалуда логикалық және
физикалық үлгілер, Мәліметтерге қатынау әдістері және Мәліметтерді өңдеу
процедуралары өзгеруіне мүмкін. Қайта құрылымдаудың келесі түрлерін
ажыратамыз:
1)
Процедуралық өзгерістер - МББЖ-ің жаңа нұсқалары шыққанда,
Мәліметтерді өңдеу әдістері, Мәліметтерді қалпына келтіру процедуралары
арқылы орындалады.
2)
Физикалық
өзгерістер
–техникалық
құралдарың
жаңаруына
байланысты, жадыны қолдану әдістерінің өзгеруіне сәйкес жүргізіледі.
3)
Логикалық деңгейдегі өзгерістер - сақталатын Мәліметтердің
логикалық құрылымының өзгерістері, байланыстардың жаңаруы.
Жүктеу амалы сияқты қайта құрылымдау амалы көптеген шығындардарды
қажет етуі мүмкін: МБ-ың құрылымын өзгерту, кейбір қолданбаларға
өзгертулер енгізу және т.с.
13
2.3
Мәліметтер базасымен жұмыс жасау ерекшеліктері. Сұраныстар
SELECT (ағылшын тілінен аударғанда «таңдау») – қойылған шарт
бойынша дерек қорынан мәліметтер жиынын қайтаратын SQL тілінің DML
операторы болып есептеледі. Көп жағдайларда бір немесе бірнеше кестелерден
таңдау жүргізіледі. SELECT сұранысын құру үшін пайдаланушы күтілетін
мәліметтер жиынтығын сүреттейді: оның түрін (бағаналар жиынтығын) және
оның құрамын (мәндерді топтау, мәліметтерді шығару тәртібін және т.б).
Сұраныс келесі түрде орындалады: ең бірінші барлық мәліметтер кестеден
шығарылады, ал одан кейін әрбір мәліметті қойылған шартқа байланысты оған
сәйкестігін тексереді.
SELECT операторының құрылымы келесідей:
SELECT
[DISTINCT | DISTINCTROW | ALL]
select_expression,…
[FROM table_references]
[WHERE where_definition]
[GROUP BY {unsigned_integer | col_name | formula}]
[HAVING where_definition]
[ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC], …]
Бұнда статикалық конструкцияларда келесі белгілер қолданылады:
−
«*»жұлдызша «барлығы» - деген белгісіне – программалауға
қолданылады, яғни «анықтаманы қанағаттандыратын барлық жағдайлар»;
−
квадратты жақша ([ ]) – бұл жақшаға алынған конструкциялар міндетті
емес болып табылады (яғни түсірілуі мүмкін);
−
фигуралық жақша ({}) – бұл жақшаға алынған конструкциялар бүтін
синтаксистік бірлік ретінде қарастырылуы керек, яғни SQL синтаксисында
қолданылатын синтаксистік конструкцияның талдау ретін анықтауға мүмкіндік
береді, кәдімгі жақшаларды аустыра отырып;
−
көп нүкте (....) – синтаксистік бірлік, бір немесе бірнеше рет
қайталанатынына белгі көрсетеді;
−
тура сызық ( | ) – екі немесе одан көп мүмкіндіктердің таңдау
мүмкіндігін белгілейді. Мысалы ASC|DESC, ASC немесе DESC терминдерінің
біреуін таңдауға болатынына көрсетеді; егер таңдау элементінің біреуі
квадратты жақшаға алынған болса, ол үнсіз таңдалатынын белгілейді ([ASC] |
DESC бұл жерде ASC таңдалады).
−
үтірлі нүкте (;) – SQL командаларының аяқталу элементі;
−
үтір (,) – тізім элементтерін бөлу үшін қолданылады;
−
бос орын ( ) – SQL командаларының кез келген синтаксистік
конструкциялар арасында көрсетуді ұлғайту үшін енгізіледі;
14
−
қалың латын әріптері мен символдары – SQL тілінің конструкцияларын
жазу үшін қолданылады және қалай көрсетілсе солай жазылу міндет (егер
арнайы айтылмаса);
−
жолдық әріптер – конструкцияларды жазу үшін қолданылады олар
пайдаланушы таңдаған нақты мәндермен алмасу керек, және нақтылық үшін
бұл конструкциялардың бөлек сөздері бір бірімен сызылу символымен ( _ )
байланысады;
−
кесте, бағана, ... терминдерін – кесте_аты, бағана_аты терминдерімен
алмастырады (синтаксистік конструкциялар текстін қысқарту үшін);
−
кесте термині – базалық_кесте, көрсетім немесе псевдоним сияқты
кестелер түрін жалпылау үшін қолданылады, бұнда псевдоним уақытша
(сұраныс орындалған кезде) атын өзгерту және (немесе) базалық_кестенің
(көрсетім) жұмыс көшірмесін құру үшін қолданылады [2].
WHERE - SELECT командасының сөйлемі, ол предикаттарды орнатуға
мүмкіндік береді, олардың шарттары дұрыс немесе дұрыс емес болуы мүмкін
кез келген кестенің бағаны үшін. Команда кестедегі тек осы ұйғарым дұрыс
болатын бағандарды ғана шығарады.
WHERE ұсыныс. WHERE арқылы -қолданушының параметрiн қалай
кестелердiң FROM ның тiзiмдерiнде сұрау салудың нәтижесiнде пайда
болуға келтiрiлген жол болғанын анықтайды. WHERE Ключевоеге қорытып
айтқанда сол сұрау салудың таңдалғандары орындаудың жанында болуы керек
болатын жол анықтайтын iздестiрулердiң шарттарының тiзiмi шығады.
Iздестiрудiң шарттарының жазуының операторларының бес негiзгi түрлерi
бар болады:
Салыстырудың операторлары: теңдiк =; < аз; > көбiрек; = көбiрек немесе
тең; тең.Таңдаудың шарттары AND, ORның логикалық операторы немесе
NOT, сонымен бiрге өрнектiң есептеуiн реттiң анықтауы үшiн қолданылатын
жақшалар көмегiмен құрастырыла алады. Шарттардағы өрнектiң есептеуi
келесi ережелер бойынша орындалады:
1.
Өрнектi солдан оңға есептеледi.
2.
Бiрiншi iшкi өрнек жақшаларда есептеледi.
3.
Операторлар NOT AND және ORнiң операторларының орындауына
дейiн орындалады.
4.
AND операторлар ORның операторларының орындауына дейiн
орындалады.
WHERE операторы шарттарды қояды және жауапты кестедегі жазулар
қанағаттандыру қажет. <таңдау шарттары> ұғымы логикалық болып
келеді.Оның
элементтері:бағананың
аты,
салыстыру
операциясы,
арифметикалық операциялар, логикалық байланыс ( И, ИЛИ, НЕ), жақшалар,
арнайы функциялар LIKE, NULL, IN және т.б. болуы мүмкін.
IN операторы берілген тізімдегі мәліметтерді салыстыруға арналған,
сонымен қатар берілген тізімдегі мәлімет есептелген өрнекпен сәйкестігі
тексеріледі. IN операторы көмегімен де OR операторын да қолданып бір
нәтижеге ие болады, бірақта ІN операторы тез орындайды.
15
Кейбiр есептерді салыстыру операторлары арқылы шешуге болмайды.
Мысалы, ‘353’ басталатын телефон тізімдері керек немесе ‘Кавказ’ сөзі бар
кітап қажет. Егер өрісте кездесетін үлгі белгілі болса және оның көмегімен
барлық немесе бір бөлігінің жолын LIKE кілтті сөзін қолдану қажет. Оны тек
символды жолдарда қолдануға болады. LIKE санды өрістермен жұмыс
жасамайды [3].
Синтаксис келесі түрден тұрады:
WHERE имя_столбца [NOT] LIKE ‘образец’
Үлгі бір тырнақтадан және бір немесе бірнеше шаблондардан –
символдардан, тастап кеткен әріптер немесе жолдардан тұруы мүмкін.Келесі
символ-ауыстырғыштар
рұқсат
етіледі:символы–кез-келген
нышанды
символдарды алмастырадысимволы –бір жолды символды ауыстырадыосы
шектеулерді көрсетілгенжол символдарының орнына бір символдарды қою
IS NULL-шi оператор (белгiсiз мән) кез келген мәннiң жоқтық көрсеткіші
NULL-арнайы мәндi мәнi бар ағымдағы мәннiң салыстыруы үшiн
қолданылады. NULL –бұл пробел белгісі (пробел –мүмкін болатын
белгі)немесе нөл (0-мүмкін болатын сан). NULL (бос жол) нөлдiк
ұзындықтың жолынан да айырмашылығы болады.
NULL мәннің жоқтығын білдіретіндіктен, NULL пайдаланылған кез
келгеніне салыстырудың нәтижесін біле алмайсыз. NULL кез келген мәнмен,
тіпті тура сондай басқа NULL-мен салыстырылғанда, нәтижесі не қате, не
дұрыс болмайды, ол – белгісіз. Булев белгісізі тіпті предикатта белгісіз мәнді
шығара отырып сұраныспен таңдалмайтын қате жол сияқты болады, естеріңізде
болсын: NOT (қате) – дұрысқа тең, ал NOT (белгісіз) – белгісізге тең.
Нөлдік мәндермен ( null ) жұмыс .Көбінесе, таблицада әрбір өріс үшін
ешқандай мағынасы жоқ жазбалар болады, өйткені мысалы ақпарат
аяқталмағандықтан немесе бұл өріс толтырылмағандықтан. SQL сізге өрісте
мәннің орнына NULL(ПУСТОЙ) мәнін енгізуге мүмкіндік бере отырып мұндай
жағдайды ескереді. өрістің мәні NULL-ге тең болғанда, бұл мәліметтер
базасының программасы арнайы бұл өрісті осы жол үшін ешқандай мәні
болмайды деп маркерлеген (немесе жазбаның). Бұл өріске жай берілуінен
ажыратылады,мәліметтер базасы кез-келген басқа мәндер сияқты нөл немесе
бос орын мәні де өңделеді. NULL техникалық мән болмайтындай онда да
Мәліметтер типі болмайды. Ол өрістің кез келген типіне орналаса алады. Соған
қарамастан, SQL-да NULL нуль ретінде жиі айтылады [4].
SQL-сұраулары көрсету жолдары реттелмеген. Сондықтан ORDER BY
командасын SELECTоператорына орналастыру керек. Жол, көрсетушiсi
SQLлер -сұрау салумен, реттемеген. SELECTтың операторына олардың
iрiктеуi үшiн табылған тiзбектегi шығатын жиынның мәлiметтерi iрiктейтiн
ORDER BY нiң сөйлемiн орналастыруға керек. Iрiктеу бiрнеше өрiстер
бойынша орындала алады -қабаттасқан iрiктеу, олар осы жағдайда ORDER BY
Ключевоеге қорытып айтқанда үтiр арқылы қайта санайды. (өсуге немесе кему
бойынша) iрiктеу әдiсi iзiмен бойынша iрiктеу орындалатын өрiстiң атауын
ORDER BYның параметрi шеңберiнде көрсетiлетiн Ключевоелерге қорытып
16
айтқанда үндемеу бойыншаға өсу бойынша iрiктеудi жүзеге асырылады. Ол
анық ASC қорытып айтқанда Ключевоемен менменседi. Керi тiзбектегi
iрiктеудiң орындаулары үшiн ол бойынша орындалатын өрiстiң атынан кейiн
DESCтың маңызды сөзiнiң көрсету керек. ORDER BY сөйлем таңдаулы
жазулар өсу ретiнде ретке салуға мүмкiндiк бередi немесе кез келген
бағана немесе бағаналардың комбинациясының мәндерiнiң кемуi, тәуелсiз
сол,нтижелер кестедегi бұл бағаналарына қатысады немесе жоқ.
ORDER BY:ның ұсынысының синтаксисi{[ASC DESC ] позиция [ASC
DESC ] имя_столбца} ORDER BY ......n
GROUP BY операторы топтағы көптеген жазуларды қорытындысын
көрсете алады.Топ дегеніміз- бірдей мағынасы бар жазулар бағаналары
анықталынған кілтті сөзі GROUP BY.Таңдалған топтар логикалық ұғымы
WHERE және HAVING-де қолданылады және де топтар бойынша берілген
операцияларды орындайды. Логикалық және арифметикалық ұғымдары келесі
топтық операцияларға қолдануға болады:AVG (топтың орташа көрсеткіші),
MAX (топтың ең жоғары көрсеткіші ), MIN, SUM, COUNT топтың ең кіші
көрсеткіштері, барлығы (сумма) және топтың сандық көрсеткіштері.
HAVING операторы GROUP BY операторымен бірігіп жүзеге асырылады
және қосымша селекция жазулары топты анықтау кезінде қолданылады.Жазу
ережесі <іздеу шарттары > және ұқсас ережені қалыптастыру <таңдау
шарттары> WHERE операторы
2.4
Мәліметтер базасы негізіндегі үлгілер
2.4.1 Реляциялық үлгі
1970 жылы ІВМ фирмасының қызмeткeрі Эдгар Кодд рeляциялық үлгі дeп
аталған мәлімeттeр қорының жаңа үлгісін ұсынған бірқатар eңбeктeрін
жариялаған болатын. Сонымeн қатар, рeляциялық мәлімeттeр қорларын өңдey
үшін Кодд мәлімeттeрді өңдeyдің тілдeрін – рeляциялық алгeбра мeн
рeляциялық eсeптeyді әзірлeп шығарды, олар бір командамeн бүкіл мәлімeттeр
қорын өңдeyдeн өткізyгe мүмкіндік бeрeді, ал иeрархиялық жәнe жeлілік
үлгідeрдe бір жолы тeк бір ғана жазба өңдeyдeн өткізілeді. Физикалық
көрсeткіштeрдің орнына Кодд мәлімeттeрдің тасымалдағышта физикалық
орналасyына тәyeлсіз оларды өздeрінің ішкі логикалық қарым-қатынастарына
сәйкeс байланыстырy идeясын ұсынды.
Рeляциялық үлгінің мәні – ол мәлімeттeрді рeляциялар нeмeсe қатынастар
дeп аталатын eкі өлшeмді кeстeлeр түріндe бeрyді ұйымдастырады жәнe
ұсынады. Бір кeстe бір нысанды, мысалы, саyда фирмасының клиeнттeрін
сипаттайды. Кeстeнің бағандары мәлімeттeр қорының өрістeрінe сәйкeс кeлeді
жәнe атрибyттар дeп аталады. Сол арқылы атрибyт нысанның жeкe қасиeтін
сипаттайды. Кeстeнің жолдары жазбаларға сәйкeс кeлeді жәнe кортeж дeп
аталады. Сонымeн, кортeж нысанның бір элeмeнтінe арналған атрибyттар
17
мәндeрінің жиынтығын, ал қатынас – кортeждeрдің жиынын сипаттайды.
Мәлімeттeр қорының құрылымын әзірлey жәнe сипаттаy кeзіндe әрбір кeстeдeгі
атрибyттарға атаyлар бeрілeді жәнe олардың типтeрі анықталады, мысалы,
атаyы Nаme, типі CHАR нeмeсe атаyы Аmоunt, ал типі REАL. Сонымeн қатар
ІNTEGER типі, DАTА типі жәнe басқа да типтeр болyы мүмкін.
Eгeр кeстeнің элeмeнті әлі анықталмаған болса нeмeсe eшқандай мәнгe иe
болмаса, онда оған Null - мәні мeншіктeлeді. Мәлімeттeрдің арасындағы
логикалық байланыс бастапқы жәнe сыртқы кілттeрдің көмeгімeн жүзeгe
асырылады. Алғашқы кілт дeп кeстeнің әрбір жолын бір мәнді анықтайтын
кeстeдeгі атрибyттардың eң аз жиынтығы аталады. Мысалы, Sаlecрeорle
кeстeсіндe бастапқы кілт Snum бағаны, ал Custоmers кeстeсіндe Cnum бағаны
болып табылады. Осылайша, бастапқы кілтті құрайтын атрибyттар мәндeрінің
комбинациясы әр жазба үшін бірeгeй, қайталанбайтын болып табылады.
Сыртқы кілт дeп мәндeрінің комбинациясы кeйбір жазба үшін бастапқы кілттің
жиынтығы аталады. Сыртқы кілттeр бір мәлімeттeр қорының кeстeлeріндeгі
мәлімeттeрдің арасындағы қажeтті байланыстарды қамтамасыз eтeді.
2.4.1.1 Кодд бойынша реляциялық алгебра амалдары
Реляциялық алгебра
- бір немесе бірнеше қатынастар негізінде берілген
қатынастарды өзгертпей басқа қатынасты құруға мүмкіндік беретін амалдардың
теориялық тілі. Алгебралық операциялардың негiзгi жиыны 8 операциядан
тұрады және 2 класқа бөлiнедi :
Достарыңызбен бөлісу: |