Реляциялық деректер моделінің бүтіндігі


Мазмұны.
КІРІСПЕ БӨЛІМ.
Деректер қоры дегеніміз не? 2
MySQL 2
MySQL ДҚБЖ-мен жұмыс жасау 3
НЕГІЗГІ БӨЛІМ.
“Бас киімдер ательесі” деректер қорын құру 5
Деректер базасында қолданатын деректер қасиеті: тәуелсізділік, интеграция, қорғау, қосалқылау. Деректердің бүтiндiгi. Базадағы деректерге қолданылатын негiзгi операциялар: жүктеу, түзету, іздеу, сұрыптау, қайта құру, реструктуризациялау 8
Қорытынды 14
Қолданылған әдебиеттер 15
Кіріспе.
Деректер қоры дегеніміз не?
Деректер қоры дегеніміз, онда сақтаулы кестелер және басқа да SQL құрылымы олармен жұмыс үшін арналған контейнер. Сіз Интернетті шолған сайын, анықтамаға жүгінесіз, билеттерге тапсырыс бересіз, жылдамдықты арттырғаны үшін айыппұл немесе дүкеннен бірдене сатып аласыз, осыған қажетті ақпарат деректер қорынан сұралады. Деректер қоры кестелерден тұрады. Кесте баған және жолдар бойынша реттелген деректер сақталатын құрылым. Әрбір санат кесте бағанына сәйкес келеді. Мысалы, бағана мына мәндердің бірін қамтуы мүмкін: Үйленбеген, Үйленген, Ажырасқан жәңе т. б. Кесте жолы кестенің бір нысаны туралы барлық ақпаратты қамтиды. Баған - кестеде сақталатын деректер фрагменті. Жол (немесе жазба) - атрибуттарды сипаттайтын бағандар жиынтығы бір объектіден тұрады. Бағандар мен жолдар кестені құрайды.
My SQL.
Деректер қорын басқарудың еркін реляциялық жүйесі. MySQL-ді әзірлеу мен қолдауды бұрын MySQL AB Швед компаниясын сатып алған Sun Microsystems-пен бірге сауда маркасына құқық алған Oracle корпорациясы жүзеге асырады. Өнім GNU General Public License астында және жеке коммерциялық лицензияда қолданылады. Бұдан басқа, әзірлеушілер лицензиялық пайдаланушылардың тапсырысы бойынша функционалдылық жасайды. Дәл осы тапсырыстың арқасында ең ерте нұсқаларда репликация механизмі пайда болды.
MySQL ДҚБЖ икемділігі көптеген кестелерді қолдаумен қамтамасыз етіледі: пайдаланушылар толық мәтінді іздеуді қолдайтын MyISAM типті кестелерді де, жекелеген жазбалар деңгейінде транзакцияларды қолдайтын InnoDB кестелерін де таңдай алады. Сонымен қатар, MySQL ДҚБЖ кестелердің жаңа түрлерін құру принциптерін көрсететін EXAMPLE кестелерінің арнайы түрімен жеткізіледі. Ашық архитектураның және GPL-лицензиялаудың арқасында MySQL ДББЖ үнемі жаңа кесте түрлері пайда болады. MySQL API бар және Delphi, C, C++, Эйфель, Java, Лисп, Perl, PHP, Python, Ruby, Smalltalk, компонентті Паскаль және Tcl тілдері үшін кітапханалар . NET, сондай-ақ MyODBC-драйвері арқылы ODBC үшін қолдауды қамтамасыз етеді. MyODBC ODBC (2. 50) 0 деңгейіндегі драйвері (1 және 2 деңгейлерінің кейбір мүмкіндіктері бар) ODBC үйлесімді MySQL қосымшасын қосу үшін MyODBC барлық Microsoft Windows жүйелерінде және Unix платформаларының көпшілігінде жұмыс істейді. MySQL 3. 22 кестелерінің максималды өлшемі 4 гигабайтқа дейін, келесі нұсқаларда шектеулер жоқ. Кестенің өлшемі оның түрімен шектелген. Жалпы жағдайда MyISAM түрі операциялық жүйенің файлдық жүйесінде файлдың шекті өлшемімен шектелген. Мысалы, NTFS-да бұл өлшем теориялық 32 веб-сайтына дейін болуы мүмкін. InnoDB жағдайында бір кесте бір кестелік кеңістікті білдіретін бірнеше файлдарда сақталуы мүмкін. Соңғысының өлшемі 64 терабайтқа жетуі мүмкін. MyISAM қарағанда, InnoDB бір кестеге қосуға болатын бағандар санына айтарлықтай шектеу бар. Әдепкі жад бетінің өлшемі 16 килобайт, оның ішінде 8123 байт берілген. Динамикалық өрістерге көрсеткіш өлшемі 20 байтты құрайды. Осылайша, динамикалық жол пішімін пайдаланған жағдайда (ROW_FORMAT=DYNAMIC), бір кесте blob немесе text түріндегі ең көп 409 бағанды сыйдыра алады.
MySQL ДҚБЖ-мен жұмыс жасау.
SQL (ДҚБЖ) реляциялық деректер қорын басқару жүйесін іске қосыңыз.
ДҚБЖ - мен жұмыс істеу үшін командалық жол терезесін немесе графикалық қабығын ашыңыз. MySQL іске қосқаннан кейін біздің терминал терезесі осылай көрінеді:
Сурет 1. 0
Ең алдымен, деректер қорын құру қажет, ол жерде деректер кестесі сақталады. Ол үшін create database my_db; қолданамыз:
Сурет 1. 1
Енді жаңадан құрылған деректер қорын use my_db; арқылы қолдана аламыз. Біздің жағдайда ол test_1 деректер қоры.
Сурет 1. 2
Кестемен жұмыс.
Кесте құру үшін create table my_table (баған аты, баған түрі) ;
Адамдар аты мен жасың шығаратын кесте құрайық. Біздің жағдайда бұл peoples кестесі:
Сурет 1. 3
Біз бос кесте құрадық. Енді бұл кестені толтыру керек. Бұл үшін insert into my_table values( 'аты', 'жасы' . . . ) ; командасын қолданамыз:
Сурет 1. 4
Суретте көрсетілгендей осы кестеге үш адамның аты мен жасың енгіздік. Кестені мониторға шығару үшін select *from my_tables; командасын қолданамыз:
Сурет 1. 5
Міне, осылайша MySQL ДҚБЖ-сіне қысқаша шолу жасадық.
Негізгі бөлім.
“Бас киімдер ательесі” деректер қорын құру.
Тапсырма: Бас киімдер ательесінде барлық жедел ақпаратты деректер қорында сақтау қажет. Ательеде бірнеше шеберлер жұмыс істейді, олардың әрқайсысы бас киімдердің бірнеше үлгілерін жасайды. Әрбір модель атауымен, фасонымен, материалымен және босату бағасымен сипатталады. Клиенттер бұйымдарды сатып алу күні, бұйымдардың саны және сатып алу бағасы көрсетілген жүкқұжатты ресімдей отырып сатып алады. Сатып алу көлемі көп болса немесе тұрақты клиенттер үшін жеңілдіктер берілуі мүмкін.
Ателье басшылығы деректер базасын енгізу нәтижесінде келесі ақпаратты алғысы келеді. Шеберлер жұмысының тиімділігін анықтау үшін үлгілері көрсетілген уақыт кезеңінде сатылған шеберлердің тізімін беру қажет. Үлгілердің танымалдығын анықтау үшін берілген уақыт кезеңінде әрбір үлгінің сату көлемі бойынша есепті шығару қажет. Түржиыны өзгерген кезде шеберлер бойынша топтастырылған дайындалатын модельдердің жаңа тізімін қалыптастыру мүмкіндігі болуы тиіс. Тұрақты клиенттерді жеңілдіктер арқылы ынталандыру үшін тұрақты клиенттер тізімін беру қажет.
Деректер қорын құрамыз:
Сурет 2. 0
Деректер қорын қолдану үшін use atelye; командасын қолданамыз:
Сурет 2. 1
Бас киім модельдері, клиенттер жәңе тапсырыс атты кестелер құру қажет:
Бас киім модельдері кестесі:
Сурет 2. 2
Сәйкесінше деректер енгіземіз:
Сурет 2. 3
select *from model; командасы арқылы сұраныс жасаймыз:
Сурет 2. 4
Клиентттер кестесің құрамыз:
mysql> create table clients (name varchar(30) , model varchar(30) , buy_date date, total_cost int(10) ) ;
Деректер енгіземіз:
mysql> insert into clients values(
-> 'Ivanov Sergo', 'shapka', '2019-09-10', '3500'),
-> ('Marina Igorevna', 'Cowboy Hat', '2019-11-24', '6000'),
-> ('Grisha Subbotin', 'Bandama', '2019-05-04', '1500'),
-> ('Santa Claus', 'Santa Hat', '2019-12-31', '5000'),
-> ('Nurlan Saburov ', 'beret', '2019-11-09', '2000'),
-> ('Tatyana Andreevna ', 'kepka', '2019-09-10', '4000') ;
Нәтижесі:
Сурет 2. 5
Жеңілдік кестесің құрамыз:
create table skidki(kolichestvo int(10), skidka int(20) ) ;
Деректер енгіземіз:
mysql> insert into skidki('5', '10'),
-> ('10', '20'),
-> ('20, '40'),
'> (30, '50'),
'> (50, '100') ;
Сұраныс жасаймыз:
Сурет 2. 6
Деректер базасында қолданатын деректер қасиеті: тәуелсізділік, интеграция, қорғау, қосалқылау. Деректердің бүтiндiгi. Базадағы деректерге қолданылатын негiзгi операциялар: жүктеу, түзету, іздеу, сұрыптау, қайта құру, реструктуризациялау.
Реляциялық деректер моделінің бүтіндігі
Реляцтиялық модельдің бүтіндігі бөлігінде кез келген бүтіндікке қойылатын талап ескеріледі:
1. Мінддердің бүтіндігіне қойылатын талап мәні ескеріледі. Болмыстағы кез келген объектісіне және мәніне реляциялық деректер базасының қатынастарының кортежі сәйкес келеді. Кез келген кортеж кез келген қатынаста осы қатынастардың басқа кортеждеріне ұқсамауы керек. Кез келген қатынаста бастапқы кілт болоуы керек.
2. Сілтемелердің бүтіндігіне қойылатын талаптар. Өмірдегі нәрселер реляциялық дереттер базасында бірнеш қатынастардың бірнеше кортеждері көрсетіледі. Егер деректер базасын жобалаған кезде екі қатынас пайда болады. Отделы (отдел, отдел количество, отдел номер (отдел номердің бастапқы кілті), сотрудники, сотрудники номер, сотрудники имя, сотрудники запрос, сотрудники отдель номера (сотрудники номер бастапқы кілт) ) сыртқы кілт болып табылады. Екі қатынасты байланыстыру үшін сотрудник отдел мәні отдель қатынасының отдель номеріне тең болуы керек. Сыртқы кілт анықталатын қатынаста сондай атрибут бастапқы кілт болатын қатынасқа ғана сілтеме жасауға болады. Сілтемелерге қойылатын талаптардың немесе сыртқы кілттің талаптардың мағынасы кез келген кортеждерінде бірдей мәні бар бастапқы кілттер болмайды. Егер сотрудник отдел номер көрсетілсе, мұндай отдел номер болуы тиіс. Мәндің бүтіндігіне қойылатын талаптар мағынасы кез келген кортежде бірдей мәні бар бастапқы кілт болмайды.
Жаңадан кортеж қосқанда немесе бар кортежде сыртқы кілтті өзгерткен кезде сілтемелердің бүтіндігіне қойылатын талаптар орындалуы үшін сыртқы кілттің мәнін қадағалау жеткілікті, ал қатынастағы кортежді жойғанда сілтеменің бүтіндігінеқойылатын талаптар үшін 3 түрлі әдіс:
1. Сілтеме жасалған кортежді жоюғатиым салынғані, яғни алдымен сілтеме жасайтын кортежді жою керек не оныі сыртқы мәнін өзгерту керек.
2. Сілтеме жасалған кортежді жойған кезде осыған сілтеме жасалынған сыртқы кілттің мәні анықталмаған болуы керек.
3. Каскадты жою. Сілтеме жасалған кортежді жою үшін осыған сілтеме жасалатын қатынастан барлық сілтемелер, кортеждерді жоямыз.
ДББЖ-ғы деректердің бүтіндігін сақтау (целостность)
Деректердің бүтіндігін сақтаудың негізгі құралы - ережелер мен шектеулер.
Шектеулер (операциялық мәндерге, мәндер бойынша ресурстарға) жеке кестелерге де, бағандарға да болуы мүмкін. Бағандарға шектеулер кестені құрған кезде беріледі. Сілтемелік шектеулер (ссылочные ограничения) - кестелер арасындағы бүтіндікке жауап береді. Мұндай шектеу нені білдіреді: бір кестенің бағананың әр мәніне немесе бағананың Рұқсатнама номерлері Есімдер Бөлімнің номері өтемақының өлшемі Ақша Символдар қатары Бүтін сандар
тобына басқа кестенің тек 1 ғана мәні сәйкес келеді. ДҚ-ның иесі шектеулердің барлық түрін беріп, алып тастай алады. SQL операциялар орындалып болған соң шектеулер тексеріледі. Егер ДББЖ-да шектеулер бұзылған жағдайда дұрыс аяқталмағаны туралы сигнал беріледі, енгізілген барлық өзгерістер жоққа шығарылады. Шектеулер арасында өзара тәуелділік бар. Біреуін алып тастасақ, ол осыған тәуелді басқа шетеуді де жоюды талап етеді.
Ережелер - ДҚ-ның белгілі бір өзгерістер кезінде берілген әрекеттерді орындаттырады. Жай әрекет бұл процедураның шақырылуы. Ережелер кестелерге байланысты. Кестелер өзгерген кезде іске қосылады. Шектеулер қарапайым шарттарды ғана тексерсе, ереже базадағы деректер арасындағы күрделі қатынастарды да тексере алады. Көшірме жасау кезінде шектеу де, ереже де тексерілмейді. Кесте жойылған кезде, оған сәйкес келетін ереже де автоматты түрде жойылады. Сол арқылы ережелер мен кестенің бүтіндігі сақталады. Ереже қолданушының привелегиясын кеңейтеді (неявно) .
Бүтіндікті шектеу. Иерархиялық моделдегі сияқты сілтеме бойынша бүтіндікті ғана қамтамасыздандырады (қатынас иесі - қатынас мүшесі) .
Деректердің реляционды моделіне ең көп анықтама берген Дейт. Дейттің айтуынша реляциялық модель 3 бөліктен: құрылымдық, манипуляциондық, бүтін бөліктерінен тұрады.
Модельдің структуралық бөлігінде реляционды ДҚ ұйымдастыру кезінде қолданылатын бір ғана деректердің құрылымы - нормалданған n-дік қатынас блып табылады екені көрсетіледі.
Модельдің манипуляциялық бөлігінде екі негізгі механизм бекітілген - реляционды алгебра және реляционды есептеу. Бірінші механизм жиындардың классикалық теориясына негізделген, ал екіншісі - классикалық предикаттардың бірінші ретті логикалық аппарат есептеулеріне негізделген. Реляционды модельдің манипуляциондық бөліктің негізгі функциясы кез келген арнайы реляционық ДҚ тілінің реляциондаушы мөлшерін қамтамасыз ету болып табылады. Тіл реляциялық деп аталады, егер ол реляционды алгебра және реляцонды есептеуден анықтылығы мен қуаттылығы жағынан кем түспесе.
Сілтемелік бүтінділік талабы немесе сыртқы кілт талабы сілтемелі қатынаста кездесетін әр сыртқы кілт мәніне сәйкес бірінішілік кілт мәнімен кортеж табылуы керек, немесе сыртқы кілт мәні белгісіз болы керек. Біздің мысалға cәйкес егер қызметкер үшін бөлім номері белгіленген болса, онда бұл бөлім тиесінше бар болуы керек.
Сілтеме және маңыз бойынша бүтінділік шектелуі ДББЖ-мен жұмыс істелінуі керек. Маңыздың бүтініділігіні сақтау үшін кортеждердің кез келген байланысында бірінішілік кілт қайталанбауы керек.
Сілтемеленген қатынасты жаңартан кезде сыртқы кілтте дұрыс емес мәндердің пайда болмауын қадағалап отырса жеткілікті. Егер кортеж қатынасқа сілтемеленіп тұрса, кортежді жойған кезде не болады?
Мұнда үш жол белгілі: біріншісі сілтемелері бар кортежді жоюға тыйым салынады. Екіншісі сілтемелері бар кортежді жою кезінде бүкіл сыртқы кілттің сілтемеленіп тұрған мәндері белгісіз болып қалады. Үшінші жол қатынастан кортежді жою кезінде сілтемеленетін қатынастан автоматты түрде сілтемеленіп тұрған кортеждер де жойылады.
Көп жағдайда бір кесте (қатыс) жеке бір файлда сақталады. Жалпы ДБ-сы алға қойылған мақсатқа сәйкес анықталған бір немесе өзара байланыстағы бірнеше кестелердің жиынынан тұрады, мысалы, MS Access ДББЖ-де ДБ-ң файлында кестелермен қатар сұрыптамалар, қорытындылар, үлгілер, макростар және модульдер сияқты басқа да ДБ-ның барлық объектілері бірге сақталады.
РДБ-да кестенің бастапқы кілтінің атқаратын қызметі:
1. Кестедегі жазбалардың қайталануын болдырмау
2. Кортеждерді кілт жиектің (жиектердің) мәндерінің өсу немесе кему ретімен реттеу
3. Кестедегі жазбаларды оқуды тездету
4. Кестелерді өзара байланыстыру.
Негізгі кілт ретінде бірнеше атрибутты бірақ қарастыруға да болады, бірақ негізгі кілтте атрибуттар саны мүмкінше аз болғаны дұрыс.
Реляциялық модельдердің желілік және иерархиялық модельдерден ұтымды жағы, олардың деректер құрылымын бейнелеудегі қарапайымдылығы, яғни реляциялық модельдер пайдаланушыларға деректерді қарапайым екі өлшемді кесте (relation-қатынас) түрінде ұсынып, оларға қол жеткізуге ыңғайлы механизмдері қарастырылған. Реляциялық модельдерде логикалық байланысы бар кестелер арасындағы байланыс олардың белгілі бір атрибуттарының мәндерінің бірдей болуы арқылы орнатылады.
Кесте-қатынас реляциялық модельдердің әмбебап объекті болып табылады. Реляциялық модельдер бойынша деректерді өңдеу реляциялық есептеудегі қатынастар алгебрасының аппаратына негізделеді.
Реляциялық модельдегі деректер құрылымдары. Реляциялық модельдегі деректер құрылымының негізгі типі болып кесте табылады. Кестенің әр жолында белгілі бір бағанаға сәйкес тек қана бір мәні болады. Кестеде екі бірдей жол болуы мүмкін емес. Кестенің жолдарының саны жалпы жағдайда шектелмейді.
... жалғасы- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

Ақпарат
Қосымша
Email: info@stud.kz