Мәліметтер қоры туралы жалпы түсініктер

Автор работы: Пользователь скрыл имя, 06 Декабря 2013 в 13:47, курсовая работа

Краткое описание

Қазіргі кездегі өмір тиімді басқарусыз мүмкін емес. Ақпартты өңдеу жүйесі маңызды категория болып тбылады.
КУРСТЫҚ ЖҰМЫСТЫҢ ӨЗЕКТІЛІГІ: Мәліметтер қорын құру. Ол мәліметтерді кесте, форма, сұрату, есеп беруші және макростар көмегі арқылы құрып, мәліметтерді өңдеуде — есеп берушіні пайдалана білу.

Содержание

КІРІСПЕ....................................................................................................................3
1. МӘЛІМЕТТЕР ҚОРЫ ТУРАЛЫ ЖАЛПЫ ТҮСІНІКТЕР..............................5
1.1. Мәліметтер қоры және ақпараттық жүйелер................................................5
1.2.Мәліметтер қорын іздеу, сорттау және индексалау; формаларды және есептерді құру.........................................................................................................9
1.3. Мәліметтер кестесінің индексін сипаттайтын қасиеттері..........................11
2. DELPHI ЖӘНЕ МӘЛІМЕТТЕР ҚОРЫ...........................................................15
2.1. Delphi-де қорлармен жұмыс істеу.................................................................15
2.2. Delphi ортасы қолдайтын мәліметтер қорлары.........................................16
2.3.Delphi-дегі МҚБЖ-мен жұмыс істеуге қажетті базалық класстар мен компоненттер.....................................................................................................19
3. МӘЛІМЕТТЕР ҚОРЫН ҚҰРУ ЖӘНЕ БАСҚАРУ.......................................21
3.1. Мәліметтер қоры кестелерін құру және басқару......................................21
3.2. Кестені индекстеу.......................................................................................27
ҚОРЫТЫНДЫ.......................................................................................................32
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ...........................................................34

Вложенные файлы: 1 файл

мәліметтер қорын индексациялау курсовая работа.doc

— 340.50 Кб (Скачать файл)

 Егер бірнеше алаң  индекстелген болса, онда реттеу алғашқы құрылған индекс алаңынан басталады.

Мәліметтер қоры көптеген кестелерден тұруы мүмкін. Қолданбалы программалар бөлек кестелермен жұмыс жасамайды. Олар кестелер жиынтығымен жұмыс жасайды.

Көбінде бір кесте  ең басты кесте болады да, ал қалғандары бағынышты болады. Басты және көмекші кестелер кілт арқылы байланысуы мүмкін, кілт ретінде екі кестеде де бар бірдей алаң болады.

Кез келген деректер қорының  талаптарының біріне - сыртқы жадыға мәліметтерді сақтау сенімділігі болып табылады.

Сақтау сенімділігі  ол - кез келген ақаудан кейін  деректер қорын қайтадан қалыпқа  келтіру. Ақаулар аппараттық және программалық болуы мүмкін. Аппараттық ақаулар  екі түрге бөлінеді: жұмсақ және қатты.

Жұмсаққа компьютердің аяқ астынан өшуі. Ал қатты ақауға: сыртқы жады тасымалдаушысындағы ақпараттың жоғалуы.

Осы ақаулардан кейін, деректер қорын қалыпқа келтіру үшін қосымша  ақпарат керек. Сондықтан да деректер қорындағы мәліметтерді қосымша  сақтау керек. Ол үшін журнализация әдісін қолданады.

Журнал – ол мәліметтер қорының қолданушының қолы жетпейтін деректер қорының бір бөлігі. Кейде әртүрлі дискілерде журналдың көшірмелері сақталады. Онда негізгі деректер қорындағы өзгерістердің бәрі тіркеліп отырады.

Әртүрлі МҚБЖ деректер қорындағы  өзгерістер журналдарда әртүрлі деңгейде жазылады. 

 

1.3. Мәліметтер кестесінің индексін сипаттайтын қасиеттері

 

Мән

Индекс қасиеттері

ixPrimary

Алғашқы индекс

ixUnigue

Индекстің өрістердің барлық мәндері  уникалды

ixDescending

Индекс сорттау кему тәртібінде орындалады

ixCaseInsensitive

Сорттау үрдісі мәтіндік өрістердің ішіндегі мәліметтің регистріне сезімтал емес.


          Екіншілік индексті жою үшін келесі тәсілді қолдануға болады:

Procedure DeleteIndex (const Name: String);

Қатынауы бар индекстер тізімін

Procedure GetIndexNames (List: TStrings); тәсілі алуға мүмкіндік береді.

Көп жазбалары бар  кестелерді көру ыңғайсыз. Белгілі бір шартпен байланысқан жазбалар тобын ғана ерекшелеу жиі қажет болады. Мысал қарастырайық. Бізге Parts кестесінің бөлшектердің саны 50-ден аз (OnHand өрісі) екені көрсетілген немесе бөлшектің құны 500 теңгеден көп емес екені көрсетілген (Cost өрісі) барлық жазбаларды таңдап алу қажет делік. Ол үшін мәліметтер жиынтығын берілген шарт бойынша фильтрлеу қажет.

Мұндай шарт (ол сұрау деп аталады) мәтіндік жол түрінде мәліметтер жиынтығының Filter қасиетінде жазылады және құрамына ағымдағы мәліметтер жиынтығының өрістері, константалары, логикалық және қатынас операциялары қолданылатын логикалық өрнек кіреді: мысалға, ондай жазбаларды айқындау үшін Filter қасиетіне келесі жолды жазу керек:

OnHand <50 or Cost < =500

Мәндердің фильтрациялануына рұқсат ету үшін мәліметтер жиынтығының Filtered қасиетін true тең деп орнату керек.

Егер Filter қасиетіне жол жобалау кезеңінде емес, бағдарламаның орындалуы барысында еңгізілсе (мысалға, батырманы шерту бойынша), онда қажет жазбалардың таңдаулы динамкалық түрде орындалады.

Шарттың құрылымына белгілі бір шектеулер қойылады. Көптеген автономды және файл-серверлік МҚБЖ-лер үшін  өрічтер мәндерін бір бірімен салыстыруға  рұқсат берілмейді. PartNo < Cost

 Бірақ та, клиент-серверлік МҚБЖ-лердің көбісі мұндай мүмкіндікті қолдайды. Бұл  SQL тілінің  ерекшеліктерімен байланысты.

Фильтрациялау үрдісінде FilterOptions қасиетінің қосымша баптарын  қолдану мүмкін. FoCaseInsensitive бабы мәтіндік ақпаратты салыстырған кезде  реистр есепке алына ма, жоқ па екенін анықтайды,  foNoPartialCompare бабы мәтіндік өрістер  мәндерінің толық сәйкес келуі  бойынша фильтрлеуді  орындауға немесе жлдардың біреуі жұлдызшаға аяқталса жолдары бірдей деп санауға мүмкіндік  береді.

‘123*’ = ‘12345’

Фильтрлерді қолдану өте күрделі  сұрауларды қалыптастыруға мұмкіндік  береді, бірақ үлкен көлемді мәліметтер  жиынтықтарында фильтрлеу баяу жүреді.  Сондықтан Ttable компоненті үшін мәліметтер   қоры  кестелерінің нақты өрістеріне шектердің  мүмкін мәндерін оперативті беруге  мүмкіндік беретін  тәсілдер тобы  ұйымдастырылған.

Ең бірінші:

Рrocedure  SetRangeStart;

тәсілі шақырылады.

Ол кестені аралықтың алғашқы  мәнін қабылдау жағдайына  қояды. Осы тәсілден кейін  алғашқы мәндерді индекстелген өрістерге  меншіктеу операторлары келуі керек. Әрі қарай 

Procedure  SetRangeEnd;

тәсілі щақырылады.

Оның көмегімен аналогиялық  әдіспен аралықтың соңғы шекарасы беріледі. Қалыптастырылған аралыққа  енген  жазбаларды сұрыптау келесі  тәсілді шақыру арқылы іске асырылады:

Procedure  ApplyRange;

Мысалы, егер Button1 батырмасын шерткенде Cost өрісінің мәндері50-ден кем емес және 100-ден артық емес болатын  бүкіл жазбаларды сұрыптау керек  болса, келесі кодты  қолдануға болады:

DataModule2.Parts.SetRangeStart;

DataModule2.Parts.FieldByName(“Cost”).AsCurrency := 50;

DataModule2.Parts. SetRangeEnd;

DataModule2.Parts. FieldByName(“Cost”).AsCurrency := 100;

DataModule2.Parts.ApplyRange;

Кестенің аралықты қолданып  жұмыс істеу режимін жою үшін

Procedure  CancelRange;

тәсілі қолданылады. 

Көлемі үлкен мәліметтер қорларында ақпаратты  қажет  жазбаны  іздеу  құралдарсыз түзету  мен  редакторлау өте қиын. Ең жеңілі  ондай іздеуді

Function  Find Key (const KeyValues: array of const): Boolean;

тәсілі арқылы орындау.

Іздеу кілті деп аталатын  параметр IndexName және IndexFieldNames қасиетінде көрсетілген әр бір өріс үшін мәндер тізімін сипаттайды. Мысалы, егер мәліметтер қорының көрсеткішін Parts кестесінің PartNo өрісінің мәні 900-ге тең  жазбасына жылжыту  үшін келесі  команданы орындау керек

DataModule2. Parts.FindKey ([900])

Осы кезде Parts кестесі PartNo өрісі бойынша индекстелуі және IndexName қасиетінде индекс ретінде сәйкес екіншілік индекстің атуының тұруы талап етіліде. FindKey тәсілі қажет жазба табылмағанда false мәнін қайтарады. Қолданушының ыңғайлылығы үшін қосымшаға келесі тәсілді қосқан артық болмайды:

Procedure  FindNearest (const KeyValues: array of const);

Бұл тәсіл KeyValues параметріне нақты сәйкес келмесе де оған ең жақын болатын сәйкес қрістің мәні бар жазбаны табуға әрекеттенеді.

Мысалы, бүтін 5 санына 4 пен 6 ең жақын сандар ‘AA’ жолына - ‘AB’ жолы ең жақын және т.с.с. болады.

Іздеу кілтін, сондай-ақ, келесі тәсіл арқылы қалыптастыруға болады:

Procedure SetKey;

Сәйкес әдіс аралықыт қалыптастыруды еске түсіреді. Іздеу кілті қалыптастырылғаннан кейін керекті жазбаға

Function GotoKey: Boolean;

тәсілі арқылы өтуге болады.

Мәні бойынша ұқсас жазбаға өту

Function GotoNearest;

тәсілдің көмегімен жүзеге асырылады.

Мысалы:

DataModule2.Parts.SetKey;

DataModule2.Parts.FieldByName(‘PartNo’).AsInteger:=900;

DataModule2.Parts.GotoNearest;

Іздеу үшін, сондай-ақ, әмбебап тәсілдерді де қолдануға болады:

Function Locate(const KeyFields: string; const KeyValues: Variant; Options: TLocateOptions):Boolean;

Function Lookup(const KeyFields: string; const KeyValues: Variant; const ResultFields: string): Variant;

Бірінші тәсіл параметр ретінде іздеу орындалатын өрістер тізімін, әрбір өрістің мәндерінің тізімін және іздеудің қосымша баптауларының жиынтығын (TlocateOptions типі) алады. Мысалы, PartNo индекстелген өрісте 900 мәнін іздеу келесі жолмен орындалуы мүмкін.

DataModule2. Parts. Locate (‘PartNo’; VarArrayOf([900]), [ ]);

Екінші тәсіл іздеу мен қоса атаулары ResultFields параметрінде көрсетілген өрістер мәндерінің массивін (Variant типті) қайтарады.

DataModule2. Parts. Lookup (‘PartNo’; VarArray[900]), ‘Cost’);

          2. DELPHI ЖӘНЕ МӘЛІМЕТТЕР ҚОРЫ

 

2.1. Delphi-де қорлармен жұмыс істеу

 

Delphi-де қорлармен жұмыс  істеу үшін компоненттердің бірнеше жиынтықтары бар. Әрбір жиынтық белгілі бір тапсырмаларды орындауға өте жақсы келеді. Осы жерде заңды сұрақ туады:неге соншама көп, әрі әртүрлі компоненттер қолданылады?

 Олардың бәрі мәліметтерге  қатынаудың  әр түрлі технологияларын  қолданады және мүмкіншіліктер бойынша ажыратылады. Microsoft өзінің өнімдеріне тек АДО мәліметтерге қатынау технологиясын енгізді.  Borland фирмасы әртүрлі технологиялар арқылы жұмыс істейтін әр түрлі құралдарды ұсынды және бағдарламалаушыны тек өзінің жобаларымен шектемейді. Осындай жағдай өте улкен артықшылықтарды береді. Одан басқа, кез келген жағдайда қолданыла алатын компоненттер топтары бар.

Мәліметтер қорларына  қатынаудың бар құралдарына қысқаша  шолу жасайық.

  • Data Access вкладкасында мәліметтерге қатынаудың негізгі

компоненттері орналасқан. Олар жалпыға ортақ  және басқа компоненттері топтарымен қоса қолданулары мүмкін.

  • Data Controls вкладкасында кестелердегі мәліметтерді көрсету

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

  • BDE вкладкасы Borland Databae Engine деп аталатын Borland фирмасы

жобалаған технология бойынша  мәліметтер қорларына қатынауға  мүмкін беретін компоненттерді құрайды. Бұл технология өте қатты ескірді және ескі версиялармен өзара байланысу үшін ғана қолданылады. Оған қарамастан ол мәліміттер қорқарының  ескірген типтерімен (Paradox,  dBase сияқты)жақсы жұмыс істейді.

  • DBExpress –бұл Borland фирмасыныңмәліметтерге қатынаудың жаңа

технологиясы. Ол жоғары иілгіштікпен ерекшеленеді және мәлімет  қорларын қолданатын клиент-серверлік  қосымшаларды бағдарламалауға жақсы  келеді. DBExpress вкладкасындағы компоненттерді Oracle, BB2 және MySQL сияқты серверлік технологиямен  құрылған мәлімет қорларында қолданған жөн.

  • ADO (Active Data Objects) – Microsoft корпорациясымен жобаланған

мәліметтерге қатынау  технологиясы. Ол өте жақсы кітапхана, бірақ оны тек Microsoft мәлімет қорларымен, яғни MS Access және MS SQL Server қолданған жөн. Оны сондай-ақ тек ODBC арқылы жұмыс істей алатын мәлімет қорларының  спецификалық сервері болса да қолдануға болады.

 

      2.2. Delphi ортасы қолдайтын мәліметтер қорлары

 

Delphi ортасы қолдайтын  мәліметтер қоры кестелерінің  бірнеше форматтарын қарастырайық.

Delphi бағдарламалау тілінің өзіндік кестелер форматы жоқ, бірақ ол көптеген сыртқы форматтармен жұмыс істеуге мүмкіндік беретін құралдарға ие.

Delphi бағдарламалау тілі  қолдайтын мәліметтер қорларының  серверлік кестелеріне:

  • DB2;
  • Informix;
  • InterBase;
  • Microsoft SQL Server;
  • Oracle;
  • Sybase жатады.

Delphi бағдарламалау тілі  қолдайтын мәліметтер қорының  локальді кестелеріне:

  • Microsoft Access;
  • dBase;
  • FoxPro;
  • Paradox жатады.

Delphi көмегімен құрылған  қосымша мәліметтер қорына BDE (Borland Database Engine) мәліметтер қорларының арнайы процессоры арқылы қол жеткізеді.

BDE – мәліметтерге  қол жеткізуді қамтамасыз ететін  драйверлер мен динамикалық түрде  байланысқан кітапханалар (*.dll файлдары) жинағы.

Мәліметтер қорларының BDE процессоры dBase және Paradox типті мәліметте қорларының кестелерімен өте эффективті жұмыс істеуге мүмкіндік береді.

Мәліметтер қорларының кестелеі мен қосымшаларының өзара  орналасуына байланысты, мәліметтер қорларды екі үлкен топқа бөлуге болады:

  • локальді;
  • клиент-серверлік;

Локальді – кестелері, олармен жұмыс істейтін қосымшалар орналасқан компьютерлерде болатын мәліметтер қоры.

Локальді мәліметтер қорлармен жұмыс істейтін қосымшалар – бір ярусты (single-tiered applications) деп  аталады, себебі қосымша да, мәліметтер қоры да бір компьютерде (яруста) орналасқан.

Кестедегі мәліметтерді алу сондай-ақ көп қолданушылық та бола алады. Осындай вариант сервер мен компьютерлер желісін көздейді. Мәліметтер қорын ұйымдастырудың бұл  тәсілі файл-сервер деп аталады.

Осы архитектураның бірқатар кемшіліктері бар:

Мәліметтер қорларының көшірмелерін жасау жән олармен  бөлек компьютерлерде жұмыс істеу  үшін бүкіл мәліметтер қорының белгіл

бір мерзім сайын жаңарту  қажеттігі туады. Бұл желілік  трафикті жоғарлатады және бүкіл  жүйенің жылдамдығын азайтады;

Бір қолданушы мәліметтерді өзгерткен жағдайда олар басқа

қолданушылардың мәліметтер қорларының локальді көшірмелеріне  бірден бармайды, сондықтан кезкелген  қолданушы ескірген ақпаратты көре алады;

Информация о работе Мәліметтер қоры туралы жалпы түсініктер