Oracle – да мәліметтер базасын құру



Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 3
1 Негізгі бөлім ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 5
1.1 Реляциялық мәліметтер базасының моделі ... ... ... ... ... ... ... ... ... 5
1.2 Oracle программасының негізі ... ... ... ... ... ... ... ... ... ... ... ... ... 7
2 SQL және SQL*Plus тілдері ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 9
2.1 SQL командаларының түрлері ... ... ... ... ... ... ... ... ... ... ... ... ... 10
2.2 Мәліметтер базасымен әсерлесу ... ... ... ... ... ... ... ... ... ... ... ... .. 17
3 Мәліметтер базасының кестелерін құру ... ... ... ... ... ... ... ... ... ... .. 19
3.1 Oracle мәліметтерінің түрлері ... ... ... ... ... ... ... ... ... ... ... ... ... . 19
3.2 Шарттарды анықтау және қолдану ... ... ... ... ... ... ... ... ... ... ... ... 22
4 Мәліметтер базасына сұраныстарды ұйымдастыру ... ... ... ... ... ... ... .25
5 Практикалық бөлім ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 28
5.1. Мәліметтер базасының логикалық моделі ... ... ... ... ... ... ... ... ... ..28
5.2 Үлгіні физикалық түрде белгілеу ... ... ... ... ... ... ... ... ... ... ... ... ..29
5.3 Кестелерді мәліметтер базасында құру және енгізу ... ... ... ... ... ... ..30
5.4 Сұраныстар бойынша есепқағаздар ұйымдастыру ... ... ... ... ... ... ... 35
5.5 Мәліметтер базасының қосымшасын жасау ... ... ... ... ... ... ... ... ... 36
Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 37
Қолданылған әдебиеттер тізімі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...38
Мәліметтер базасын басқару жүйесі, MББЖ (Database Management System–DBMS) қазіргі заманда мекемелердің ең негізгі компьютерлік құралдарының бірі болып табылады. Коммерциялық Web – сайттарда MББЖ көбінесе есеп беру мен транзакцияларды енгізуге арналған қосымша ретінде қолданылады. Мәліметтер базасын қолданудың негізгі себебі - ақпаратты сақтау және оны жеңіл қолдану. Негізінде MББЖ – компьютердің операционды жүйесімен байланысқан және оны мәліметтерді алу және сақтау үшін қолданатын программалық құрал. Ал ақпараттың өзі дұрыс жасақталған мәліметтер базасында сақталады. Яғни, мәліметтер базасы ақпараттан тұрады, ал MББЖ – мәліметтер базасын қадағалайтын программалық құрал.
Көптеген қазіргі мәліметтер базасын басқару жүйелері, Oracle – мен қоса, реляциялық модель негізінде жұмыс жасайды. Бұл модельдің негізгі ерекшелігі – барлық мәлімет баған мен жолдан тұратын кестелерде сақталады. MББЖ – ның ақпаратты сақтау және алуға, қолданушыларды анықтауға, қосымшаларды жасақтауға арналған жекелеген кұралдары бар. Қолданушылар мәліметтер базасымен сұраныс тілі, енгізу формалары мен есепқағаз арқылы байланысады. Көптеген жүйелерде (Oracle) қолданылатын стандартты сұраныс тілі SQL болып табылады. SQL тілі стандартталған болғандықтан ол көптеген жүйелерге қолданыла береді. Oracle мәліметтер базасы SQL тілімен қатты байланысқан, сондықтан Oracle - да қандай – да бір әрекет жасамастан бұрын SQL тілін игеру қажет.
Кішігірім мекемелерде MББЖ–ні бір ғана персоналды компьютерде орнатуға болады. Алайды MББЖ–ның бар қуатын тек бірнеше қолданушының бір уақытта мәліметтерді өзгерту жұмысы барысында көруге болады. Персоналды жүйе тек бірнеше қолданушыға ғана арналады. Алайда керек кезде кішігірім мәліметтер базасын басқару жүйесін үлкейтуге болады. Көптеген сервер негізіндегі жүйелерде мәліметтер базасы басты серверде сақталып, ал қолданушылар сервермен клиенттік компьютерлер атты жекелеген машиналармен байланыса алады. Сервер мәліметтердің негізгі сақтаушысы болып табылады, сондықтан барлық қолданушылар бәріне ортақ ақпаратты, сонымен бірге жаңарған ақпаратты да көреді. Әрине, мұндай жүйеде барлық компьютерлер бір желіге қосылу керек. Осындай бір желіге қосылуда негізінен өзінің ыңғайлылығы және мүмкіншілігінің мол болуынан Интернет протоколдары қолданылады. Қазіргі кезде барлық клиенттік компьютерлер сервермен Интернет браузері арқылы байланысады. Мұндай жүйенің негізгі артықшылықтарының бірі мәліметтер базасына кіру және форма мен есеп-қағаздарды қолдануға арналған программалық құралдарды Интернеттен алуға болады. Тағы бір ерекшелігі қолданушы арзан кішігірім клиенттік компьютерді қолдана алады, себебі, қымбат арнайы компьютерлер керек емес.
Кітаптар:
1. Джеймс Перри, Дж. Пост. Введение в Oracle 10g. - пер. с англ. – М.: ООО «Вильямс», 2006. – 704 с.
2. Жилинский А. Microsoft SQL Server 2005. - СПб.:БХВ – Петербург, 2007. – 224с.
3. Хомоненко А.Д., Гофман В.Э. Самоучитель SQL. - СПб.:БХВ -Петербург, 2005. – 576с.
4. К. Дж. Дейт. Введение в системы баз данных. – пер. с англ. - М.: ООО «Вильямс», 2004. – 345 с.
5. С.М. Диго. Проектирование и использование баз данных. – М.:Финансы и статистика, 1990. – 435с.
6. Горев А., Ахаян Р., Макашарипов С. Эффективная работа с СУБД. – СПб.: Питер, 1997. – 704с.
7. Кириллов В.В. Структуризованный язык запросов (SQL). – СПб.:ИТМО, 1994. – 80с.
8. Мейер М. Теория реляционных баз данных. – М.:Мир, 1987. – 608с.
9. Дж. Тельман. Основы систем баз данных. – М.: Финансы и статистика, 1985. – 568с.
10. Тиори Т., Фрай Дж. Проектирование структур баз данных. В 2 кн., - М.:Мир, 1985. Кн.1. – 287с.: Кн.2. – 320с.

Интернет – сілтемелер:
11. Oracle Technology Network сайты http://otn.oracle.com
12. Тегін оқыту программалар сайты www.intuit.ru

ҚАЗАҚСТАН РЕСПУБЛИКАСЫНЫҢ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ

ӘЛ-ФАРАБИ АТЫНДАҒЫ ҚАЗАҚ ҰЛТТЫҚ УНИВЕРСИТЕТІ

Физика факультеті

Оптика және плазма физикасы кафедрасы

Бітіру жұмысы

Oracle – да мәліметтер базасын құру

Орындаған:
4-курс студенті
Джаныбекова А.С.

Ғылыми жетекші:
ф.-м. ғ. д., доцент
Габдуллина Г.Л.

Норма бақылаушы:
Жукешов А.М
ф.-м. ғ. д., доцент

Қорғауға жіберілді:
оптика және плазма физикасы
кафедрасының меңгерушісі,
ф. -м. ғ. д., профессор
Архипов Ю.В

Алматы, 2009
Мазмұны

Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 3
1 Негізгі бөлім ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 5
1.1 Реляциялық мәліметтер базасының моделі ... ... ... ... ... ... ... ... ... 5
1.2 Oracle программасының негізі ... ... ... ... ... ... ... ... ... ... ... ... ... 7
2 SQL және SQL*Plus тілдері ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 9
2.1 SQL командаларының түрлері ... ... ... ... ... ... ... ... ... ... ... ... ... 10
2.2 Мәліметтер базасымен әсерлесу ... ... ... ... ... ... ... ... ... ... ... ... .. 17

3 Мәліметтер базасының кестелерін құру ... ... ... ... ... ... ... ... ... ... .. 19

3.1 Oracle мәліметтерінің түрлері ... ... ... ... ... ... ... ... ... ... ... ... ... . 19

3.2 Шарттарды анықтау және қолдану ... ... ... ... ... ... ... ... ... ... ... ... 22
4 Мәліметтер базасына сұраныстарды ұйымдастыру ... ... ... ... ... ... ... .25
5 Практикалық бөлім ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 28
5.1. Мәліметтер базасының логикалық моделі ... ... ... ... ... ... ... ... ... ..28
5.2 Үлгіні физикалық түрде белгілеу ... ... ... ... ... ... ... ... ... ... ... ... ..29
5.3 Кестелерді мәліметтер базасында құру және енгізу ... ... ... ... ... ... ..30
5.4 Сұраныстар бойынша есепқағаздар ұйымдастыру ... ... ... ... ... ... ... 35
5.5 Мәліметтер базасының қосымшасын жасау ... ... ... ... ... ... ... ... ... 36
Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 37
Қолданылған әдебиеттер тізімі
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .3
8

Кіріспе

Мәліметтер базасын басқару жүйесі, MББЖ (Database Management
System–DBMS) қазіргі заманда мекемелердің ең негізгі компьютерлік
құралдарының бірі болып табылады. Коммерциялық Web – сайттарда MББЖ
көбінесе есеп беру мен транзакцияларды енгізуге арналған қосымша ретінде
қолданылады. Мәліметтер базасын қолданудың негізгі себебі - ақпаратты
сақтау және оны жеңіл қолдану. Негізінде MББЖ – компьютердің операционды
жүйесімен байланысқан және оны мәліметтерді алу және сақтау үшін қолданатын
программалық құрал. Ал ақпараттың өзі дұрыс жасақталған мәліметтер
базасында сақталады. Яғни, мәліметтер базасы ақпараттан тұрады, ал MББЖ –
мәліметтер базасын қадағалайтын программалық құрал.
Көптеген қазіргі мәліметтер базасын басқару жүйелері, Oracle – мен
қоса, реляциялық модель негізінде жұмыс жасайды. Бұл модельдің негізгі
ерекшелігі – барлық мәлімет баған мен жолдан тұратын кестелерде сақталады.
MББЖ – ның ақпаратты сақтау және алуға, қолданушыларды анықтауға,
қосымшаларды жасақтауға арналған жекелеген кұралдары бар. Қолданушылар
мәліметтер базасымен сұраныс тілі, енгізу формалары мен есепқағаз арқылы
байланысады. Көптеген жүйелерде (Oracle) қолданылатын стандартты сұраныс
тілі SQL болып табылады. SQL тілі стандартталған болғандықтан ол көптеген
жүйелерге қолданыла береді. Oracle мәліметтер базасы SQL тілімен қатты
байланысқан, сондықтан Oracle - да қандай – да бір әрекет жасамастан бұрын
SQL тілін игеру қажет.
Кішігірім мекемелерде MББЖ–ні бір ғана персоналды компьютерде орнатуға
болады. Алайды MББЖ–ның бар қуатын тек бірнеше қолданушының бір уақытта
мәліметтерді өзгерту жұмысы барысында көруге болады. Персоналды жүйе тек
бірнеше қолданушыға ғана арналады. Алайда керек кезде кішігірім мәліметтер
базасын басқару жүйесін үлкейтуге болады. Көптеген сервер негізіндегі
жүйелерде мәліметтер базасы басты серверде сақталып, ал қолданушылар
сервермен клиенттік компьютерлер атты жекелеген машиналармен байланыса
алады. Сервер мәліметтердің негізгі сақтаушысы болып табылады, сондықтан
барлық қолданушылар бәріне ортақ ақпаратты, сонымен бірге жаңарған
ақпаратты да көреді. Әрине, мұндай жүйеде барлық компьютерлер бір желіге
қосылу керек. Осындай бір желіге қосылуда негізінен өзінің ыңғайлылығы және
мүмкіншілігінің мол болуынан Интернет протоколдары қолданылады. Қазіргі
кезде барлық клиенттік компьютерлер сервермен Интернет браузері арқылы
байланысады. Мұндай жүйенің негізгі артықшылықтарының бірі мәліметтер
базасына кіру және форма мен есеп-қағаздарды қолдануға арналған
программалық құралдарды Интернеттен алуға болады. Тағы бір ерекшелігі
қолданушы арзан кішігірім клиенттік компьютерді қолдана алады, себебі,
қымбат арнайы компьютерлер керек емес.
Көптеген Oracle қосымшалары 3 компоненттік жүйе бойынша жұмыс жасайды.
Бірінші компонент - мәліметтер базасын басқаратын мәліметтер базасының ішкі
сервері. Бұл компьютер (сервер) мәліметтерді алуға және сақтауға жауап
береді, сонымен қатар, мәліметтерді резервті көшірмелеу мен транзакциялауды
қадағалайды. Мұндай құрылым компьютерлердің біреуі істен шыққанның өзінде,
сервердің қолданушыларға қызмет көрсетуін тоқтатпауға мүмкіндік береді.
Ортаңғы компонент-форма мен есепқағаздарды өңдейтін және қолданушылардың
есептік жазбаларын басқаратын Oracle қосымшасының сервері. Бұл сервер желі
бойынша сұраныстарды жібере отырып, MББЖ–нен мәліметтерді алады. Жауап
ретінде мәлімет жолдарын алып, оларды өңдеп, форма мен есепқағаздар түрінде
қолданушыларға жібереді. Ортаңғы компонент те бірнеше компьютерден құралуы
мүмкін. Осы мүмкіншілік салмақты жүктемелер мен құралдардың істен шығуынан
болатын жағдайлардан сақтайды. Жоғарғы (интерфейстік) компонент–Интернет
браузері бар кез–келген компьютерлерден жүктелетін клиенттік компонент.
Oracle–дың интерфейстік деңгейге қоятын негізгі талаптарының бірі–Java
процессорының орнатылуы. Негізінде бұл компоненттің жұмысы мәліметтерді
жинау және көрсетумен ғана шектеледі. Алайда, жиі қолданушылар
мәліметтердің тезірек дайын болуын қалайды, сол себепті әр түрлі
компьютерлер қолданады. Осы жағдайды ескере отырып, клиенттік компоненттің
программалық және ақпараттық қамтамасызтандыруды мүмкіндігінше қарапайым
және арзан ету керек. Егер де клиенттік компьютерде қандай–да бір қателік
пайда болса, қолданушы басқа компьютерге ауысып, серверге сұраныс жасай
алады.
Сонымен, көп қолданушыларға арналған көп деңгейлі жүйенің негізгі
мақсаты – қосымша мен мәліметтер базасының бір уақытта жұмыс жасауын
қамтамасыз ету. Күрделі қосымшаларда жүйе бірнеше компоненттердің бұзылу
оқиғасының өзінде де жұмыс жасауын тоқтатпауы қажет. Мұндай қиыншылықтан
шығудың жалғыз ғана амалы – әр деңгейдегі резервті көшірмелеу. Мәліметтер
базасын көп деңгейде қолданудың артықшылығымен бірге кемшілігі де бар.
Яғни, клиенттік компонент ретінде Web–браузерді қолдану. Желілік
байланыстың баяу болу салдарынан, мәліметтер клиенттік компьютерде
жүктеледі. Мәліметтердегі жаңартулар мәліметтер базасының серверіне
жазылмайды. Яғни, бір қолданушы мәліметтерді өзгерту барысында басқа
қолданушы ол мәліметті одан бұрын өзгертіп қою мүмкін. MББЖ мұндай жағдайды
шешеді, алайда, баяулықтың әсерінен қай өзгерістің дұрыс екенін анықтау
кішкене қиынға түседі. Oracle Java – ға тәуелді болғандықтан, Web –
браузерде Java процессорын орнату қажет.
Сонымен, Oracle MББЖ - күрделі программдық пакет және құрамында
ондаған, тіпті жүздеген компоненттері бар ондаған қосымшалардан тұрады.
Oracle MББЖ операциондық жүйемен тығыз байланысқанның өзінде де
платфрмалардан тәуелсіз жұмыс жасайды. Сондықтан, Oracle – да жасалған
қосымша кез – келген Oracle жүйесі орнатылған платформада қосыла береді.

1 Негізгі бөлім

1.1 Реляциялық мәліметтер базасының моделі

Мәліметтер базаларының зерттеу жұмыстары ақпараттың көп бөлігін алу
және сақтаудың ең тиімді тәсілі реляциялық мәліметтер базасы екенін
көрсетті. Осындай тиімділікке қол жеткізу үшін мәліметтер базасын құруда
өте ұқыпты болу керек. Реляциялық мәліметтер базасындағы негізгі компонент
– кесте. Е. Ф. Кодд (E. F. Codd), реляциялық мәліметтер базасының атасы,
кесте деген ұғымнан гөрі байланыс (relation) терминін қолданғанды ұсынған.
Осыдан реляциялық (relational) мәліметтер базасы термині пайда болған.
Кесте бір нысана туралы ақпараттан тұратын жолдар мен бағаналардан
құралады. Оның бағаналары – атрибут деп аталады, ал жолдары мәліметтердің
жекелеген данасын сипаттайды. Айтылған терминологияны реляциялық мәліметтер
базасының екі кестені зерттеу арқылы түсінуге болады.
Admins
AdminID LastName FirstNameBirthDateGender WorkPhone Title
101 Ломакина Людмила 13.08.195 Ж 8(777)238408Специалист
3 4 ВО
102 Шыныбаева Дана 20.05.198Ж 8(777)805846Специалист
3 6 ВО
103 Жандеуова Жанат 30.08.198Ж 8(777)277595Специалист
0 4 ВО
104 Кабыл Дулат 29.01.198М 8(702)391253Оператор
6 1

Rooms
RoomID AdminID Quantity
200 101 12
202 102 11
203 103 6
207 104 9

1 cурет Реляциялық мәліметтер базасындағы кестелер

Көрсетілген екі кестеде әр жол қарапайым, яғни тек бір ғана негіз жайында
мәлімет береді. Мәліметтің әр бөлігі өте қарапайым болады, себебі, тек
жалғыз ғана дене туралы ақпарат береді. Мысалы, бір адамға екі телефон
номерін жазу мүмкін емес. Ол үшін кестеге қосымша жаңа бағаналар
(CellPhone, HomePhone) қосу немесе оларды жеке кестеге жазу керек. Назар
аударатын жағдай, екі кесте өзара AdminID бағанасындағы ақпарат арқылы
байланысқан. Rooms кестесінің бірінші жолына қарап, 200 - ші аудиторияда
идентификаторы 101 болатын адам администратор екенін көруге болады. Ал сол
идентификатор арқылы Admins кестесінен анықталған администратор туралы
толық мәлімет алуға болады. Кестелердің осылай байланысуының себебі, олар
мәліметтер базасына дұрыс енуі қажет. Яғни, екі кестені байланыстырған
баған мәліметтер базасына екі кестедегі байланысқан жолдарды қосуға
мүмкіндік береді. Басқаша айтқанда, ортақ баған екі кестенің арасында желім
ролін атқарып, Oracle немесе басқа мәліметтер базасына жекелеген
кестелерден біріккен ақпаратты алуға мүмкіндік береді.
Алғашқы кілттер. Реляциялық мәліметтер базасы жүйесінде кестелердің
нақты және дұрыс жұмыс істеуі үшін кестелерді ұйымдастырудың бірнеше
негізгі ережелері бар. Алайда сол ережелермен таныспастан бұрын бірнеше
ұғымдарды білген жөн. Реляциялық мәліметтер базасы – байланысқан кестелер
жиыны. Кесте–нысананы сипаттайтын жолдар мен бағандардың (атрибуттар)
жиыны. Атрибут – нысананың сипаттамасы. Жол – нысананың бір данасын
сипаттайтын мәлімет. Әр кестеде алғашқы кілт болу қажет. Алғашқы кілт –
жеке жолды бір рет ғана анықтайтын бағандар жиыны немесе бір бағанда
орналасқан мән. Алғашқы кілті бар баған тек қайталанбайтын мәндермен
толтырылады. Айтылғандай Admins кестесінде AdminID бағаны алғашқы кілт
болып табылады. Жүйеде алғашқы кілтті автоматты түрде құруға болады. Онда
алғашқы кілт сөзсіз қайталанбайтындай толтырылады. Сонымен бірге, алғашқы
кілтті қолмен де толтыру болады, бірақ, онда алғашқы кілттің дұрыс
қайталанбайтандай толтырылмауы мүмкін. Әсіресе, үлкен жүйелерде немесе
бірнеше қолданушылары бір уақытта мәліметтер мен алғашқы кілттер енгізе
алатын жүйелерде мұндай қате кету мүмкін. Алайда Oracle – да алғашқы
кілттерді құратын жеке құрал бар. Сонымен бірге, қолданушы Oracle – ға
алғашқы кілтті құруда сілтемелер бере алады. Алғашқы кілтті құрарда дұрыс
баған таңдалуы керек. Мысалы, атап өткен Admins кестесінде телефон номері
немесе аты – жөні бар баған алғашқы кілт болуы мүмкін емес. Себебі,
администратордың телефон номері ауысып кетуі, екі администратордың аты
немесе тегі бірдей болуы мүмкін. Алғашқы кілтпен жұмыс істегенде абай болу
қажет. Кейбір кестелерде алғашқы кілт бірнеше бағаннан тұруы мүмкін. Мұндай
жағдай реляциялық мәліметтер базасында ерекше орын алады. Егер алғашқы кілт
екі немесе одан көп бағандардан тұрса, онда нысаналар арасында көптің
көпке арақатынасы болады. Көптің көпке арақатынасы бойынша А кестесінің
бір жолы В кестесінің бірнеше жолына сәйкес келуі мүмкін. Ал В кестесінің
бір жолы А кестесінің бірнеше жолына сәйкес келуі мүмкін. Бір немесе
бірнеше бағаннан тұратын алғашқы кілтті құрама алғашқы кілт деп атайды.
Сыртқы кілттер. Admins кестесінде AdminID бағаны алғашқы кілт деп
аталып, ал Rooms кестесінде ол сыртқы кілт ( foreign key) аталады. Бұл
термин Oracle – да өте қажет, себебі, байланыстар сыртқы кілттер арқылы
анықталады. Назар аударатын жағдай, Admins кестесінде сыртқы кілт жоқ.
Мұндай кестелер базистік деп аталады, себебі, ондағы мәліметтер басқа
кестелердегі мәліметтерге тәуелді емес. Базистік кестелердің бір
артықшылығы оларға байланысқан кестелерді тиіспей жаңа мәліметтер енгізуге
болады. Керісінше, енді алғашқы кілт пен сыртқы кілт арасында байланыс
болса, онда қолданушы мәліметті бірінші Rooms кестесіне енгізе алмайды.
Мысалы, егер мәліметті Admins кестесінен бұрын Rooms кестесіне енгізсе,
онда бұл әрекетті Oracle қате деп санайды. Себебі, Rooms кестесі Admins
кестесіндегі мәліметтерге тікелей байланысты. Яғни, мысалы, Rooms кестесіне
жаңа администратор идентификаторын енгізбестен бұрын сол мәліметті Admins
кестесіне бірінші жазу керек. Мұндай ерекшелік сілтемелер деңгейіндегі
бүтіндік деп аталады.
Сонымен, Oracle жүйесіндегі мәліметтер базасы ұзақ және пайдалы
қызмет көрсетуі үшін жоғарыда аталған сілтемелер деңгейіндегі бүтіндік,
яғни, алғашқы және сыртқы кілттер дұрыс тағайындалуы керек.

1.2 Oracle программасының негізі

Oracle жүйесіндегі негізгі элементтер төмендегі 2 суретте келтірілген.
Мәліметтер базасының администраторы, МБА (Database Administrator – DBA),
мәліметтер базасы жүйесін басқару мен орнату, сонымен бірге, ақпараттың
сақталуы мен резервтік көшірмелеуіне жауап береді. Қосымшаны құрастырушы
мәліметтер базасындағы кестелер, формалар, есепқағаздар мен сұраныстарды
құрып, қолданушылар талап ететін процесстерге жауап беретін код жазады.
Айтып кеткендей, МББЖ операциондық жүйемен тығыз байланыста, бірақ негізгі
екпін дисктерде ақпарат сақтау мен одан алуға қойылады. МББЖ–де компьютер
жүйесімен атқарылатын нақты процесстерді өңдейтін мәліметтер процессоры
болады. Мәліметтер базасында бүкіл ақпарат кестелерде сақталады, ал МББЖ –
де мәліметтер базасындағы сақталған барлық кестелерді анықтайтын мәліметтер
сөздігі қолданылады. Сонымен қатар, МББЖ – де қолданушыларды анықтап және
қолданушылардың әрекеттеріне шектеу қою құқығын тағайындайтын қауіпсіздік
жүйесі орнатылған. Процессордың барлық компоненттері, сөздіктер мен
қауіпсіздік жүйелері автоматты түрде орнатылады. МББЖ – де PLSQL тілінің
көмегімен қолданушылар мен қосымшалар сұраныстарына жауап ретінде алынған
мәліметтерді қалай сақтау мен шығаруды анықтайтын сұраныстар процессоры
болады. Берілген жүйе өте қуатты және ақпаратты алуды жеңілдетеді. Сонымен
қатар, МББЖ құрамында мәліметтер базасының администраторына жүйені баптап,
оның күйі мен өнімділігін қадағалауға мүмкіндік беретін администраторлық
құралдар бар. Oracle – да бұл құралдар бірнеше сұраныстар мен пакеттерден,
сонымен бірге, Oracle – дің бірнеше негізгі администраторлық құралдарын
біріктіретін және администраторға оларды жеңіл қолдануға мүмкіндік беретін
Enterprise Manager графикалық құралынан тұрады. Бүкіл жүйе мәліметтер
жүйесін қолданушы және басқа компьютерлермен қосатын байланыс желісіне
тәуелді. Мәліметтер базасын орнатқанда, жүйені дұрыс қалыпқа келтіру керек.
Себебі, Oracle желісінде жүйе тек жалғыз анықталуы қажет.

Oracle МББЖ

Форма және есепқағаз қосымшасы
Байланыс желісі

Администра-торлық құралдар
PLSQL
сұраныстар
процессоры

Мәліметтер процессоры
Мәліметтер сөздігі
Қауіпсіздік

Операциондық жүйе
Дисктер

2 сурет Мәліметтер базасын басқару жүйесіндегі элементтер

МББЖ – нің жеке компоненті – форма және есепқағаз қосымшасы. Егер де
МББЖ серверге үлкен өндіріс ортасында орнатылса, онда Oracle Enterprise
жүйесінің бөлігі болатын форма және есепқағаз қосымшасын жеке орнту керек.
Көбінесе өндірістік мекемелер форма және есепқағаз қосымшасын жеке
компьютерге орнатады. Алайда, Oracle – да МББЖ – мен бірге орнатуға болатын
форма және есепқағаз қосымшасы бар.
Компоненттерді орнатқаннан кейін, қосымшалар құрастырушысы Developer
Suite құралын орнатады. Көп жағдайларда оны да жеке компьютерге орнатады.
Алайда, Oracle МББЖ мен Developer Suite – ті бірге орнатуға болады.
Ескеретін жағдай, Developer Suite – ті форма және есепқағаз қосымшасы бар
компьютерде орнатуға болмайды.
Oracle құралдары бірнеше бөліктермен орналатындығы және МББЖ
операциондық жүйемен тығыз байланысты екенін білген жөн. Операциондық
жүйелер қауіпсіздігі (Linux, Windows XP, Unix және т.б) жылдан жылға
жоғарылауда, сондықтан, Oracle – дің программдық қамтамасыз ету құралдарын
орнатуда бірнеше қиыншылықтарға тап болу мүмкіндігі бар. Кейбір жағдайда
қауіпсіздік жүйесінің бірнеше элементтерін сөндіруге тура келеді. Мысалы,
Oracle – дің көптеген құралдарына брандмауэрлар кедергі болады.
Oracle 10g мәліметтер базасы Интернет протоколдарына қатты тәуелді.
Себебі, көптеген құралдар Web – браузерлер арқылы қосылады. Яғни,
байланыстың көп бөлігі стандартты Интернет протоколдары арқылы жүреді.
Мұндай жағдайдың артықшлығы - көптеген жүйелерде стандартты Интернет
протоколдары қолданылады. Тек бір ғана кемшілігі - Интернеттің базалық
қауіпсіздігі өте төмен, сондықтан қолданушылар, яғни компаниялар, білім
беру мекемелері өздерінің сақтандыру құралдарын орнатады. Аталған құралдар
Oracle байланысына кедергі жасайды. Мысалы, Oracle – дің форма және
есепқағаздары Enterprise Manager – мен көп жағдайда сөндірулі TCPIP
протоколдары арқылы байланысады. Егер МББЖ – нің программдық қамтамасыз ету
құралдары бірнеше компьютерлерге орнатылса, онда байланысты жалғау үшін
брандмауэрларды дұрыс қалыпқа келтіру керек. Егер де МББЖ мен Developer
Suite – ті бір компьютерге орнатса, онда жағдай жеңілдейді. Бірақ, сондай
жағдайдың өзінде де, бірнеше порттарды ашуға немесе ішкі брандмауэрды
сөндіруге тура келеді.
Сонымен, алдымен МББЖ – ні стандартты орнатып, жүйе қолданатын барлық
порттар мен байланыстарды көшіріп алу қажет. Кейін, орнатылған жүйені
сынап, яғни, қосып көру керек. Егер де компонент жұмыс істемесе,
брандмауэрдағы керек портты ашуға тура келеді. Егер бұл көмектеспесе,
брандмауэрдың программдық қамтамасыз ету құралын толық сөндіру керек.

2. SQL және SQL*Plus тілдері

Құрылымдық сұраныстар тілі (Structured Query Language – SQL)
реляциялық мәліметтер базасымен әсерлесуге арналған стандартты өндірістік
тіл. Бірінші рет SQL 1970 жылы System R және IBM – ге арналған SQL – ді
ойлап тапқан Е.Ф Кодд – тың (E.F Codd) еңбегінде сипатталған. Сол стандарт
негізінде барлық Oracle – ға кіруге арналған құралдар жасалған. SQL – ге
арналған өндірістік стандарттарды екі бірлестік бекітеді. Олар – ANSI
(American National Standards Institute – АҚШ – тың ұлттық стандарттау
институты) және ISO (International Standards Organization – Ұлтаралық
Стандарттау Бірлестігі). SQL – дің маңызды ерекшелігі – бұл тілді көптеген
мәліметтер базасы жүйелерінде (DB2 (IBM), SQL Server (Microsoft), MySQL)
қолдануға болады.
SQL – пограммалау тілі емес. Ол мәліметтер базасындағы кестелерде
сақталатын ақпаратты өзгертуге, жоюға, енгізуге және алуға арналған
ұғымдарды береді. SQL – ді қолдану арқылы бірден орындалатын сұраныстар
жазып, мәліметтер базасын басқаруға арналған операциялар мен әр түрлі
нысаналар құруға болады. Соңғы жылдары стандарттың бірнеше түрлері шықты.
Соңғысы SQL99 Oracle мәліметтер базасын басқару жүйесін толық
қанағаттандырады. Бұл стандарттың үлкен артықшылығы Oracle – да үйренген
кез – келген SQL командаларын басқа реляциялық мәліметтер базасында
қолдануға болады. Әрине, SQL – ді әр түрлі мәліметтер базасы жүйелерінде
қолданудың айырмашылықтары болуы мүмкін. Бірақ, олар үлкен емес. Басқаша
айтқанда, SQL – ді игерген соң кез – келген МББЖ –нің интерфейстерімен
жұмыс істеуге болады.
Алайда, Oracle–да ANSI SQL–мен қатар SQL*Plus командалары атты SQL–ді
толықтыратын мүмкіншілігі көп кеңейтілімді қолдануға болады. Бірақ,
SQL*Plus кеңейтілімі SQL–ді ұстанатын басқа мәліметтер базаларында
қолданылмаса да, Oracle–да оны қолданудың септігі өте көп. Әсіресе SQL*Plus
кеңейтілімі сұраныстарға жауап ретінде алынған мәліметті өңдеуге өте
ыңғайлы.

2.1. SQL командаларының түрлері

SQL командаларының 5 түрі бар. Олар: сұраныстар өрнектері, DDL
өрнектері (Data Definition Language – мәліметтерді анықтайтын тіл) , DML
өрнектері (Data Manipulation Language – мәліметтерді манипуляциялау тіл),
TC өрнектері (Transaction Control – транзакцияларды басқару) және DCL
өрнектері (Data Control Language - мәліметтерді басқаратын тіл).
SQL тілінің негізгі қызметі - мәліметтер базасына сұраныстарды
ұйымдастыру және оларға жауап алу. Сол қызметті сұраныстар өрнектері
атқарады. SQL тілінде ақпаратты алу үшін SELECT командасы қолданылады. Бұл
команда бір немесе бірнеше кестелерден ақпаратты алуға мүмкіндік береді. Ол
кестенің қай өрістері мен сұралған өрістердің қандай кестеден алу, қандай
жолдарды қайтару және жолдардың қай кезекте қайтарылуын анықтайды. SELECT
командасының синтаксисы:
SELECT [DISTINCT ALL] {* [баған_атауы [AS жаңа_атау]] , [ ... ] }
FROM кесте_атауы
[JOIN кесте_атауы [псевдоним]
ON ( кесте_баған оператор кесте_баған)] ...
[WHERE сұраныс_шарты]
[GROUP BY баған_тізімі] [HAVING сұраныс_шарты]
[ORDER BY баған_тізімі ]
Бұл синтаксисте тік жақшада ([және]) міндетті емес, ал фигуралық жақшада
({және}) міндетті элементтер жазылады. Тік сызықпен ( ) жазылған
элементтердің біреуі таңдалуы керек. Мысалы, мына команда арқылы Computers
кестесінен мәліметтерді (барлық жолдар мен бағандарды) алуға болады:
SELECT * FROM Computers;
Мұндағы жұлдызша (*) барлық бағандарды, ал FROM операторы Oracle – ға
мәліметтерді Computers кестесінен алуды көрсетеді. Нәтиже ретінде 14 баған
және 38 жол, яғни кестедегі барлық ақпарат алынады. Бұл ақпараттың тек
бөлігін алу үшін келесі сұранысты қолдануға болады:
SELECT CompID, CompName, Computer, System
FROM Computers
WHERE System = ‘Windows 2000’
ORDER BY CompID, CompName;
SELECT операторынан кейін жазылған бағандар Computers кестесінен тек
компьютер, оның идентификаторы, аты, және жүйесі туралы мәліметті береді.
Сонымен бірге, WHERE операторында қойылған шарт ақпаратты шектейді, яғни
жүйесі тек Windows 2000 (System = ‘Windows 2000’) болатын компьютерлерді
көрсетеді. Ақпаратты көрсетпестен бұрын ORDER BY операторы жолдарды
компьютер идентификаторы, содан кейін оның аты бойынша сұрыптайды.
DDL өрнектері. Бұл топқа кіретін SQL командалары мәліметтер базасының
негізін қалайтын кестелер мен көріністер құрылымын анықтайды. Олар: CREATE,
ALTER, DROP, RENAME және TRUNCATE. Берілген командалар кестелерді немесе
қолданушыларды анықтауға және құруға; мәліметтер базасының құрылымын
өзгертуге; құрылымды (мысалы, кестені) жоюға; оның атауын өзгертуге;
кестені толықтай жоюға мүмкіндік береді.
CREATE TABLE операторы мәліметтерді анықтайтын тілдің кесте құруға
арналған негізгі өрнегі болып табылады. SQL 3 түрлі кестелермен жұмыс
жасайды: базалық, туынды және қаралатын. Базалық кестелер – ақпараты бар
үлгінің нысанасы. Мысалы, Admins кестесі. Туынды кестелер – мәліметтер
базасының (SELECT) сұранысына жауап ретінде қайтарған ақпарат жиыны.
Қаралатын кестелер – туынды кестелердің бір түрі болатын күрделілендірілген
SELECT операторының сұранысы бойынша алынған ақпарат.
Базалық кестелерге арналған CREATE TABLE операторының синтаксисы:
CREATE TABLE кесте_атауы
( баған_атауы түрі [NOT NULL]
[CONSTRAINT шарт_анықталуы DEFAULT мән]
[, баған_атауы түрі [NOT NULL]
[CONSTRAINT шарт_анықталуы DEFAULT мән] ...])
[PRIMARY KEY ( баған_атауы [,баған_атауы ] )
[FOREIGN KEY ( баған_атауы [,баған_атауы ] )
REFERENCES сыртқы_кесте ( баған_атауы [,баған_атауы ] ) ]

Төменде жазылған CREATE TABLE командасы 10 бағаннан тұратын Admins
кестесін құрап, AdminID бағанын алғашқы кілт етіп анықтайды.
CREATE TABLE Admins
( AdminID INTEGER NOT NULL,
LastName NVARCHAR2(30),
...
Title NVARCHAR2 (40),
CONSTRAINT pk_admins PRIMARY KEY ( AdminID ) );
Бірінші жолда кестеге атау қойылады. Содан кейін жай жақшаның ішінде
бағандардың тізімі жазылады. Соңғы жолда AdminID бағаны үшін шарт жазылады.
Шарт (CONSTRAINT) – бағанға қойылатын шектеу. Шарт бойынша AdminID бағаны
алғашқы кілт болып табылады. Яғни, бұл бағандағы ақпарат Admins кестесінде
қайталанбайтындай болуы керек (AdminID мәндері - 101, 102, 103, 104
қайталанбайды, әр мән тек бір жолда ғана кездеседі).
Әр баған атауынан кейін ақпараттың түрі және өлшемі жазылады. AdminID
бағанындағы ақпарат түрі INTEGER – бүтін сандар жиыны. Міндетті емес NOT
NULL операторы бағанды бос қалдырмай, толтыру керек екенін көрсетеді.
LastName бағанында 30 белгіден тұратын NVARCHAR2 ұлттық тілдің белгілерінен
құралған ақпарат жазылады. Ұлттық тіл белгілер жиыны белгілері 8 – биттік
кодтауға келмейтін тілдердің ақпаратын жазуға мүмкіндік береді.
ALTER TABLE операторы. Реляциялық мәліметтер базасының ыңғайлы
ерекшеліктерінің бірі - бағандарды жою, өзгерту және қосу мүмкіндігі.
Мысалы, Admins кестесінде администраторлардың тек HomePhone және WorkPhone
телефондары жайлы мәлімет берілген. Ал енді олардың ұялы телефон
(CellPhone) номерлерін кестеге енгізу керек. Ол үшін SQL – дің ALTER TABLE
операторы қолданылады. Төменде Admins кестесіне CellPhone бағанын қосатын
команда көрсетілген:
ALTER TABLE Admins ADD CellPhone VARCHAR2 ( 11 );
Oracle кестенің соңына CellPhone бағанын қосып, оның барлық жолдарын
NULL мәнімен толтырады. Кейінірек, бағанға телефон номерлерін енгізуге
болады. Осылайша, кестедегі бағандарды өзгертуге және жоюға болады. Ол үшін
ALTER TABLE командасының қасына DROP COLUMN және MODIFY сөздерін жазу
керек. Мысалы, төменде жазылған команда Admins кестесінен Gender бағанын
жояды:
ALTER TABLE Admins DROP COLUMN Gender;
Осылайша, келесі команда бағандағы ақпарат түрін CHAR (6) – ға өзгертеді:
ALTER TABLE Admins
MODIFY Gender NVARCHAR2 (10) DEFAULT CHAR
(6);
Сонымен бірге, DEFAULT операторы автоматты түрде Gender бағанына тек
өзгертілген түрге сәйкес келетін ақпаратты толтырады.
DROP TABLE операторы. Кейде кестелерді жою керек жағдайы пайда
болады. Бұл кезде кестедегі барлық жолдарды жойып, кестенің құрылымын
сақтап қалуға болады. Егер де кестені толықтай жою керек болса, онда келесі
синтаксисті қолданған дұрыс:
DROP TABLE кесте_атауы [CASCADE CONSTRAINTS] [PURGE]
Кестені CASCADE CONSTRAINTS қосымшасымен жойғанда, кестедегі барлық
ақпарат пен онымен байланысқан көріністер мен процедуралар себетке
орналастырылады. Міндетті емес PURGE операторын қолданғанда, кесте себетке
қалдырылмай толықтай жойылады. Яғни, жүйеден қайтымсыз өшіріледі. Мысалы,
келесі команда Rooms кестеcін жойып, себетті тазалайды:
DROP TABLE Rooms CASCADE CONSTRAINTS PURGE;
DML өрнектері. Берілген операторлар көмегімен кестедегі мәліметтерді
басқаруға, яғни, жаңа ақпарат енгізу, оларды өзгерту және жоюға болады.
Жаңа мәліметтерді енгізу, қате немесе ауысқан ақпаратты өзгерту, ескіргенін
жою мүмкіндігі мәліметтің нақты және ескірмеуі үшін керек. Айтылған
мүмкіндіктерді болдыруға INSERT, UPDATE және DELETE командалары
қолданылады.
INSERT операторы кестенің барлық немесе бірнеше бағандарына ақпарат
енгізеді. Бұл стандартты оператордың жазылу синтаксисы өте қарапайым:
INSERT INTO кесте_атауы [ ( баған_атауы [ ,
баған_атауы ] ) ]
VALUES ( мән [ , мән ... ] )
Кестенің барлық бағандарына мән бергенде, келесі синтаксисты
қолдануға болады:
INSERT INTO кесте_атауы VALUES ( мән, мән, мән, ... )
Назар аударатын жағдай, көрсетілген синтаксисте бағандар атауының тізімдері
жазылмаған, тек олардың мәндері берілген. Егер барлық бағандарға мәндер
енгізілсе, онда INSERT командасының VALUES операторында барлық бағандарға
мән берілуі керек, яғни, бірде – бір мәнді қалдыруға болмайды. Егер кез –
келген бағанның қандай мән қабылдайтыны белгісіз болса, онда NULL сөзін
қолданған дұрыс. NULL – белгісіз мән мағынасын білдіретін резервтік сөз.
Төменде Rooms кестесіне INSERT командасының көмегімен жаңа жолды енгізетін
команда көрсетілген. Бұл командада барлық мәндер мен олардың кесте
бағандарына сәйкес реті алдын - ала белгілі:
INSERT INTO Rooms VALUES ( 200, 101, 12 );
Жоғырадағы синтаксисті қолдану үшін мәндер тізімі келесі шарттарды
қанағаттандыру керек.
• Егер INSERT командасында бағандар атауы берілмесе, онда әр бағанға
мән берілу керек және ол мәндер кестеде анықталған бағандар тізімінің
ретіне сәйкес толтырылуы қажет.
• Белгісіз мәндер NULL мәнімен толтырылуы керек.
Егер де тек бірнеше мәндер енгізу керек болса, онда мәндер қабылдайтын
бағандар атауын әр түрлі ретпен жазуға болады және соған сәйкес VALUES
тізіміне мәндер енгізіледі. Мысалы, Rooms кестесіне жаңа жол енгізу керек
болсын. Бар белгілі мәлімет тек аудитория идентификаторы мен аудиториядағы
компьютерлер саны (администратор номері белгісіз):
INSERT INTO Rooms ( RoomID, Quantity ) VALUES ( 202, 11
);
INSERT командасының жазылуының үшінші түрі - SELECT операторы арқылы
басқа кестеден жолдарды көшіріп алу. Бұл синтаксисте VALUES тізімінің
орнына SELECT операторы жазылады:
INSERT INTO кесте_атауы ( баған_атауы1, баған_атауы2, ... )
SELECT баған1 , баған2 , ...
FROM кесте_атауы [WHERE сұраныс_шарты]
Осы синтаксисте мәндер қойылатын бағандар жазылады. Содан кейін SELECT
операторы арқылы сәйкес бағандарды басқа кестеден алынылады (ескі және жаңа
баған түрлері бір болу керек). Міндетті емес WHERE операторы жолдарды
сүзгіден өткізеді. Мысалы, онымен Rooms кестесіне басқа кестеден екеуіне
ортақ бағандары бар жолдарды көшіру арқылы қосуға болады:
INSERT INTO Rooms ( RoomID, Quantity )
SELECT AddRoomID, AddQuantity
FROM AddRoom;
Жоғарыдағы команда дұрыс орындалуы үшін Rooms кестесінің бағандарындағы
мәлімет түрі AddRoom кестесінің мәліметіне сәйкес келуі керек. Сонымен
қатар, әр қосылатын жаңа жолда Rooms кестесінде кездеспейтін жеке
қайталанбайтын аудитория идентификаторы болу қажет. Айтылған әдіс көлемді
ақпаратты бір кестеден екінші кестеге көшіруге өте ыңғайлы.
UPDATE операторы. Кейде кестедегі ақпаратты оның ескіруіне немесе
дұрыс енгізбеуіне байланысты өзгертуге тура келеді. Администратордың
телефон номері немесе мекен – жайы ауысуы мүмкін. Осыған байланысты UPDATE
операторы арқылы бір немесе бірнеше жолдардың бір немесе бірнеше
бағандарын өзгертуге болады. UPDATE операторының синтаксисы былайша
жазылады:
UPDATE кесте_атауы
SET баған_атауы = мән [ , баған_атауы = мән , ...
]
[WHERE сұраныс_шарты]
SET операторы міндетті, ал WHERE – міндетті емес. Көрсетілгендей кесте
атауы мен бағанға берілетін жаңа мән енгізіледі. Егер WHERE шарты
қолданылса, онда сол шартқа сәйкес келетін жолдар ғана жаңартылады. Мысалы,
Admins кестесіндегі идентификатор номері 102 болатын Шыныбаева Дананың үй
телефонының ауысуына байланысты оны өзгерту керек:
UPDATE Admins
SET HomePhone = ‘8 (727) 245-3456’
WHERE AdminID = 102 AND LastName = ‘Shynybaeva’
AND Firstname = ‘Danna’;
DELETE операторы мәліметтер базасындағы кестелерден жолдарды жою үшін
қолданылады. Ол арқылы кестеден бір, бірнеше немесе барлық жолдарды өшіруге
болады. DELETE командасы келесі синтаксисте жазылады:
DELETE FROM кесте_атауы [WHERE сұраныс_шарты]
DELETE FROM операторы жолдарын өшіру керек кестені көрсетуді талап етеді.
Міндетті емес WHERE командасы өшірілетін жол қай шартты қанағаттанудыру
керек екенін анықтайды. Егер WHERE операторын тастап кетсе, онда Oracle
барлық жолдарды жояды. Есте сақтайтын жағдай, бұл оператор кестені емес,
тек жолдарды ғана өшіреді. Кесте және оның барлық жолдарын өшіру үшін DROP
TABLE командасын қолдану керек. Мысалы, Admins кестесінен идентификаторы
102 болатын администратор туралы жолды өшіру керек:
DELETE FROM Admins WHERE AdminID = 102;
Осы әрекеттен соң кестеден Шыныбаева Дана жайлы ақпарат жойылады.
TC өрнектері. TC командаларының SQL – дегі атқаратын қызметі –
транзакцияларды басқару. Мәліметтер базасының транзакциясы - жұмыстың
логикалық бірлігін көрсететін SQL командаларының жиыны. Транзакциядағы
өрнектер жеке өрнектердің біріккен жиынынан құралған. Алайда сол жеке
өрнектер дұрыс орындалу керек. Әйтпесе, мәліметтер базасын транзакциядан
бұрынғы қалыпқа келтіру үшін SQL командаларын кері қайтару керек.
Транзакцияның кең таралған мысалы - депозит шотынан ағымдағы шотқа ақша
аудару. UPDATE операторының бір әрекеті депозиттегі ақшаны аударылымға
сәйкес көлемге азайтып, ал келесі UPDATE операторы ағымдағы шотқа
депозиттен алынған аударылым ақшаны қосады. Егер де қандай – да бір
себептен UPDATE операторының екі әрекетінің біреуі дұрыс орындалмаса,
алынған ақша киберкеңістікте жоғалып, баланс теңеспейді. Айтылған мәселені
шешу үшін транзакцияны басқару өрнектері екі әрекетті біріктіріп,
мәліметтер базасына UPDATE операторының екі командасын бір уақытта жазуды
немесе мәліметтер базасын транзакциядан бұрынғы қалыпқа келтіру үшін
әрекеттерді жоюды талап етеді.
Транзакцияларды басқару өрнектердің кесте жолдарын өзгерту
әрекеттерін тұрақты немесе сол өзгерістерді кері қайтаратын құралдары бар.
COMMIT командасы кесте жолдарына енгізген өзгерістерді тұрақты етеді.
ROLLBACK командасы керісінше соңғы сақтаудан кейінгі жасалған өзгерістерді
жояды. Осы топқа кіретін тағы бір команда – SAVEPOINT, ол өзгерістерді
қайтарып, қайтып келуге мүмкіндік беретін нүктені бекітеді.

3 сурет Транзакция құрылымы

COMMIT операторы. Транзакцияны құрайтын бір немесе бірнеше SQL
операторларының нәтижелерін сақтау үшін COMMIT операторы қолданылады.
Мәліметтер базасынан шыққанда, Oracle автоматты түрде қолданушы енгізген
барлық өзгерістерді сақтайды. Мысалы, келесі командада Admins кестесіндегі
идентификатор номері 102 болатын администратор туралы мәлімет бар жол
өшіріледі. Содан кейін өзгеріс COMMIT операторы арқылы бекітіледі :
DELETE FROM Admins
WHERE AdminID = 102;
COMMIT;
ROLLBACK операторы транзакцияны құрайтын бір немесе бірнеше SQL
операторларының нәтижелерін кері қайтару үшін қолданылады. Мәліметтер
базасындағы ROLLBACK командасынан бұрын болған және COMMIT операторынан
кейінгі өзгерістер жойылады. Яғни, егер кез - келген командадан кейін
COMMIT операторы қолданылмаса, өзгерісті қайтаруға болады. Ал керісінше
COMMIT операторы қолданылса, өзгеріс қайтымсыз болады. Мысалы, енді AdminID
= 103 болатын администраторды мәліметтер базасынан өшіру керек:
DELETE FROM Admins
WHERE AdminID = 103;
Осыдан кейін жол қайтадан қалпына келтіріледі:
ROLLBACK;
Сөйтіп, мәліметтер базасы қалпына келеді. Яғни, кестеден идентификаторы 103
болатын администратор туралы мәлімет табуға болады.
SAVEPOINT операторы. Транзакцияның кез – келген жеріне сақтау
нүктесін қоюға болады. Осы нүкте арқылы одан кейін болған өзгерістерді
қайтаруға болады. Сақтау нүктелері көбінесе көлемді транзакцияларда
қолданылады. Яғни, транзакцияның дұрыс оындалмау жағдайында кері
қайтарылатын командалардың санын азайту мақсатында. SAVEPOINT операторының
синтаксисы:
SAVEPOINT нүкте_атауы
Бұл синтаксисте нүкте_атауы - кез – келген қойылатын атау. Мысалы, келесі
сақтау нүктесін құруға болады:
SAVEPOINT AfterAdminsUpdates;
Егер SAVEPOINT операторынан бұрын және одан кейін DML өрнектері
орындалса, мәліметтер базасының AfterAdminsUpdates нүктесіндегі жағдайын
қайта қалпына келтіруге болады:
ROLLBACK TO SAVEPOINT AfterAdminsUpdates;
DCL өрнектері. Қауіпсіздік мақсатында көп қолданушысы бар Oracle
мәліметтер базасында қолданушылардың жүйеге кіру әрекеттерін қадағалау
керек. Мәліметтер базасына жасалған кез – келген жүгінуді шектеуге болады.
Қолданушыға мәліметтер базасының кез – келген нысанасына (кесте, көрініс
және есепқағаз) жүгінуді рұқсат етуге немесе тыйым салуға болады.
Мәліметтер базасының қауіпсіздігін қамтамасыз ету үшін SQL командаларының
құрамына кіретін, жүйеге кіруді рұқсат ететін немесе тыйым салатын DCL
өрнектері қолданылады. Яғни, мәліметтерді басқару командалары кім Oracle
жүйесіне кіре алады, кімге кестелермен жұмыс істеуге болады, сонымен бірге
мәліметтер базасындағы әр түрлі кестелердің қолданушылары қандай кіру
құқығына және мүмкіншіліктерді ие екенін анықтайды. Тіпті жаңа қолданушылар
мәліметтер базасына тек кіру құқығына ие болады, егер оларға мәліметтер
базасының администраторы жүйе мен нысаналарды қолдануға рұқсат ететін
мүмкіншілік бермесе. Мүмкіншіліктерді беру үшін GRANT командасы, ал жою
үшін REVOKE командасы қолданылады.
Мүмкіншіліктердің екі түрі бар: жүйеге және нысаналарға қатысты.
Жүйеге қатысты мүмкіншіліктері қолданушыларға Oracle – да кейбір
әрекеттерді (кестелер, көріністерді құруға) жасауға мүмкіндік береді.
Нысаналарға қатысты мүмкіншіліктер қолданушыларға мәліметтер базасының
нысаналарымен (мысалы, басқа қолданушының кестесіне ақпаратты енгізу) жұмыс
жасауға рұқсат береді.
GRANT операторы жүйе мен нысаналарды қолдануға рұқсат етеді. Оның
жазылу синтаксисы төмендегідей:
GRANT мүмкіншілік [ ,мүмкіншілік [ ,мүмкіншілік] ... ] ALL
PRIVILEGES ON нысана
TO қолданушы [IDENTIFIED BY код] [, қолданушы2[,
қолданушы3] ...] PUBLIC [WITH GRANT OPTION]
Командадағы кішкентай әріптермен жазылған сөздердің орнына сәйкес мәндер
толтырылуы керек. Мысалы, Asem атты қолданушының Admins атты кестесі бар.
Asem қолданушы басқа Pine атты қолданушыға өзінің Admins кестесін (ешқандай
жолдарын өшірмей немесе өзгертпей) тек көруге рұқсат береді. Ол үшін
мәліметтер базасына Asem атты атпен кіріп, келесі команданы енгізу қажет:
GRANT SELECT ON Asem.Admins TO Pine;
Қолданушы басқа қолданушыға өзінің нысандарымен жұмыс істеуге
мүмкіндік беретін бірнеше мүмкіншіліктерді бере алады. Олар: SELECT,
INSERT, UPDATE, DELETE және EXECUTE. Ал администраторлар қолданушыларға
жүйеде жұмыс істеуге келесідей мүмкіншіліктерді бере алады: CREATE SESSION,
CREATE TABLE, CREATE USER, CREATE VIEW, CREATE SYNONYM және т.б.
REVOKE операторы. Кез – келген нысаны бар қолданушы мәліметтер
базасындағы өзінің нысандарын басқа қолданушылардың қолдануына тыйым сала
алады. Ол үшін REVOKE командасы қолданылады:
REVOKE мүмкіншілік [ , мүмкіншілік [, мүмкіншілік]...] ALL PRIVILEGES ON
нысана
FROM қолданушы [ , қолданушы2 [ , қолданушы3 ] ... ] PUBLIC
Pine қолданушыны Admins кестесін көру құқығынан айыру үшін ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Oracle МББЖ операциялары
Модельдер және мәліметтер құрылысы
Oracle мәліметтердің объектілі типтері
Реляционды мәліметтер базасы
Реляциялық мәліметер базасы
Мәліметтер базасы объектілері. Мәліметтер базасының объектілері
Мәліметтер базасына арналған SQL сұраныстарын әзірлеу
Кадрлар бөлімінің функциялары
Мббж-ға жалпы түсінік
ТІЛДЕР КУРСЫ АҚПАРАТТЫҚ ЖҮЙЕЛЕР ЖАСАУ
Пәндер