Жоспар №11770

Мәліметтер қорының құрылымы, модельдері және Delphi қосымшасында құру әдістері

Сұрақ-жауап

Сұрағыңызға жасанды интеллект жауап береді

 Жоспар Кіріспе..................................................................................................................3 Негізгі бөлім…………………………………………………………………....4 Мәліметтер қоры……………………………………………………….......4 Мәліметтер қорының классификациясы………………………………….4 3. Мәліметтер қорының құрылымдық элементтері…………………………5 Мәліметтер молельдерінің түрлері..............................................................7 4.1 Мәліметтердің иерархиялық моделі…………………………………..7 Ақпараттық объект ұғымы...........................................................................9 Мәліметтер қорын құруда қолданылатын базалы компоненттер және олардың Delphi мәлімет қоры қосымшасының құрылымы………………………11 Мәлімет қоры қосымшасының құрылымы……………………………...14 Мәлімет қорының қосымшасының бағдарламалық бөліктері…………17 Мәліметтер жиынының жағдайы……………………………………...…17 Қорытынды…………………………………………………………………..20 Қолданылған әдебиеттер……………………………………………………21 Қосымша……………………………………………………………………..23 КІРІСПЕ Қазіргі заманды тиімді басқарусыз елестету мүмкін емес. Басты Жұмыс қорытындысы бойынша жалпы немесе детальданған есеп алуды Басты көрсеткіштердің өзгеру тенденцияларын жеңіл анықтауға мүмкіндік беру; Еш кедергісіз, уақыт бойынша критикалық ақпаратты алуды қамтамасыз Мәліметтердің нақты және толық анализін орындау керек. Қазіргі заманғы МҚБЖ негізінен Windows қосымшалары болып табылады, Мәліметтер қорын басқару жүйелерінің өкілдерінің арасынан: Lotus Осылайша, қазіргі таңда бағдарламалаушы нақты бір пакеттің рамкаларымен Мәліметтер қоры Кез келген ақпараттық жүйенің мақсаты – нақты әлемнің Мәліметтер қорын құра отырып, қолданушы ақпаратты әртүрлі белгілер Құрылымдау – мәліметтерді көру әдістері туралы келісімдерге ену. Құрылымданбаған деп мысалға мәтіндік файлда жазылған мәліметтерді атайды. Мәліметтер қорының қолданушылары болып әртүрлі қолданбалы бағдарламалар, бағдарламалық Мәліметтер қорының қазіргі заманғы технологиясында мәліметтер қорын құру, Мәліметтер қоры (МҚ) – анықталған пәндік облысқа жататын Мәліметтер қорын басқару жүйесі (МҚБЖ) – мәліметтер қорын Мәліметтер қорындағы мәліметтердібасқарудың орталықтанған мінезі қорда сақталған мәліметтерді Мәліметтер қорының классификациясы Мәліметтерді өңдеу технологиясы бойынша мәліметтер қоры орталықтанған және Орталықтанған мәліметтер қоры бір есептеуіш жүйенің жадысында сақталады. Таратылған мәліметтер қоры есептеуіш желінің әртүрлі ЭЕМ-да сақталатын Мәліметтер қорының мәліметтеріне қол жеткізу тәсілі бойынша локальды Желілік қол жеткізуі бар орталықтанған мәліметтер қорының жүйесі Файл-сервер; Клиент-сервер. Файл-сервер.Желілік қол жеткізуі бар МҚ жүйелерінің архитектурасы желінің Клиент-сервер. Бұл концепцияда орталықтанған мәліметтер қорының сақталуынан басқа Мәліметтер қорының құрылымдық элементтері Мәліметтер қоры ұғымы құрылымдыұ элеметтердің өріс, жазба, файл Өріс – ақпараттың бөлінбейтін бірлігіне – реквизитке сәйкес Аты, мысалы, Фамилия, Аты, Әкесінің аты, туған датасы; Тип, мысалы, символдық, сандық, күнтізбелік; Ұзындығы, мысалы, 15 байт, символдар саны максималды мүмкін Жазба – логикалық байланысқан өрістердің жиынтығы. Жазба экземпляры Файл (кесте) – бір құрылымның жазбаларының экземплярларының жиынтығы. Файлдың жазбасының құрылымында мәндері жазбаның экземплярыын идентификациялайтын алғашқы МӘЛІМЕТТЕР МОДЕЛЬДЕРІНІҢ ТҮРЛЕРІ Кез келген мәліметтер қорының ядросы болып мәліметтермоделі табылады. Мәліметтер моделі – мәліметтер құрылымы мен оларды өңдеу МҚБЖ иерархиялық, желілік және реляциялық модельдердің, осы модельдердің Мәліметтер моделінің үш негізгі типтерін қарастырайық: иерархиялық, желілік Мәліметтердің иерархиялық моделі Иерархиялық құрылым анықталған заңдылықтар бойынша бір-бірімен байланысқан элементтер Иерархиялық құрылымның негізгі ұғымдарына келесілер жатады: деңгей, элемент Мәліметтер қорының әр жазбасына түбірлі жазбадан тек бір Мәліметтердің желілік моделі Желілік құрылымда сол негізгі ұғымда (деңгей, түйін, байланыс) Мәліметтердің реляциялық моделі Реляциялық (ағыл. relation — қатынас) мәліметтер қоры жүйелерінің Реляционная модель мәліметтері Понятие реляционный (англ. relation — отношение) связано с Бұл модельдер мәліметтер құрылымының қарапайымдылғымен, қолданушы үшін ыңғайлы Реляциялық модель мәліметтердің екі өлшемді кесте түрінде ұйымдастырылуына Кестенің әр элементі – мәліметтердің әр элементі; Кестеде барлық бағандар біртекті, яғни бағандағы барлық элементтер әр бағанның уникалды атауы болады; кестеде бірдей жолдар болмайды; жолдар мен бағандар тері кез келегн болуы мүмкін. Байланыстар жолдары кортеждер мен жазбаларға, ал бағандары қатынастар Әр мәні сәйкес жазбаны анықтайтын өріс жай кілт Екі реляциялық кестені байланыстыру үшін бірінші кестенің кілтін АҚПАРАТТЫҚ ОБЪЕКТ ҰҒЫМЫ Ақпараттық объект – кейбір үрдістің, нақты объекттің логикалық Арнайы реквизитті құрамның және құрылымның ақпараттық объектісі оған Ақпараттық объекттің көптеген ұйымдастырулары - әрқайсысы реквизиттердің нақты Картотека құжатының төлемі Мәліметтер қорын құруда қолданылатын базалы компоненттер және олардың Қосымшада мәліметтер көзімен немесе бағдарламалық қамтамасыз етудің арасымен Мәліметке қол жеткізу компонентінің әрқайсысы TDataSource тің минимум TDataSource компонентінің енді бір функциясы мәліметтер жиыны жағдайымен TdataSource компонентінің біреуімен мәліметтер көрінуінің визуальды компоненттері байланысқан Мәліметтер жиынын ашқанда компонент талап етілген мәлімет қорының Қолданушы мәліметтер көрінуінің компоненттері көмегімен мәліметтерді қарап шыға Енді қосымша мәліметтер қорының жалпы жағдайын біле Кез-келген қосымша мәліметтер қоры минимум екі операцияны орындай Екіншіден, ұсынысты қамтамасыз ету және алынған мәліметтерді редакторлау. Осы жағдайда мәліметтер жиының өзі және мәліметтер жиының Қолданушы мәліметтер экранын қарап шығады — бұл мәліметтер Қолданушы қандайда бір санды өзгерткісі келді — ол Қосымшаны жапқанда барлық өзгертулерді сақтау — бұл мәліметтер Бұл жағдайда мәліметтер жиынына қызмет көрсетуі үшін базалы TDataset класы иерархияның базалы класы болып табылады, Delphi мәлімет қоры қосымшасының құрылымы Күрделі қосымша құру үшін объектіге-бағыталудың дизайнының қасиеттерін білу Дәстүрлі әдістерге қарағанда объектіге-бағыталған бағдарламалаудың бірнеше ерекшеліктері бар. Осы бөлімде объектіге-бағыталған бағдарламалаудың Pascal және Delphi дегі Объект, класс және компонент түсінігі; объектіге-бағыталған бағдарламалаудың негізгі механизмдері: инкапсуляция және мұраға қалдыру, объект таратудың ерекшеліктері; қасиет және әдістің ара қатынасы; Қосымша мәліметтер қорының архитектурасы Қосымша мәліметтер қоры атында тұрғандай бірнеше мәліметтер көзінің Мәліметтер көзіне жеке мәліметтер қоры сияқты әдеттегі файлдар—мәтіндік, Бізге белгілі болғандай мәліметтер қорын арнайы бағдарламалар—локальды, жеке Тартылудың әртүрлілігіне қарамастан мәліметтер қорының жалпы архитектурасы өзгермей Қосымшаның өзі алу механизімін және мәліметтердің бірдей түрдегі Мәліметтерді алу және жіберу механизмі мәліметтер көзімен байланысты Мәліметтерді ішкі ұсыну механизміне қосымша мәліметтер қорының Қолданушы интерфейсі мәліметтерді қарап шығуды және редакторлауды сонымен Қосымшаның бизнес-логикасы алгоритм бағдарламасында мәліметтерді тарату жиынын ұсынады. Қосымша және мәліметтер қорының арасында бағдарламаны және мәліметтер Мәліметтер көзі мәліметтердің басқарылуын, толықтықты қамтамасыз ететін және Осы және келесі бөлімдерде біз Delphi ортасында Delphi мәлімет қоры қосымшасының құрылымы Delphi 7 ортасында мәліметтерге қол жеткізудің үлкен мүмкіндігі Бұл бөлімде Delphi ортасында қосымша мәліметтер қорын және Delphi ортасында қосымша мәліметтер қорының жеке шаблоны Мәліметтердің көрінуінің визуальды компоненттері Data Controls Палитра компоненттері Қосымша форманың түбірлі санынан тұрады және кез-келген интерфейсті Кез-келген қосымша мәліметтер қорында жазба топтарын беретін (оларды Мәліметтер жиынының визуальды компоненттермен мәліметтердің көрінуінің байланысын қамтамасыз Осы негізде мәліметтерге қол жеткізу базалы механизмі компоненттер компоненттер, инкапсулиияциялайтын мәліметтер жиыны (TDataSet класының мұрагері); TDataSource компоненті; Мәліметтердің көрінуінің визуальды компоненті Мәлімет қорының қосымшасының бағдарламалық бөліктері Мәліметтер жиынын функциялануын Delphi ортасындағы мәліметтер қорының қосымшасын Бұл класс мәліметтер жиынының функцияланудың негізгі құрылымын береді. Қосымша мәліметтер қорын құру процесінде бағдарламалаудың кеңінен таратылған Мәліметтер жиыны төмендегі қасиетпен ашылады және жабылады property Active: Boolean; Жеке True немесе False мәнін меншіктеу керек. Салыстырмсалы procedure Open; procedure Close; Мәліметтер жиынын ашқан соң оның жазбасы бойынша ауыстыруға procedure Next; procedure Prior; Бірінші және соңғы жазбаны сәйкес әдісті қолдана отырып procedure Last; Жазбаның соңғы жиынына төмендегі қасиет жатады property Eof: Boolean; бұл жағдайда True мәні болады Бірінші жазба үшін аналогты функцияны property Bof: Boolean; қасиеті орындайды Жазбаның берілген санын алдыға және артқа ауыстыру үшін function MoveBy(Distance: Integer): Integer; әдісі қолданылады Distance параметрі жазба санын анықтайды. Егер параметр Мәліметтер жиыны бойынша жылдамдатылған ауыстыруды бар мәліметтер көрінуінің procedure DisableControls; Кері операцияның орындалу әдісі procedure EnableControls; Мәліметтер жиынының жазбаларының жалпы саны қасиетін қайтарады property RecordCount: Integer; дегенмен оны абайлап қолдану керек, бұл қасиетке әр function IsEmpty: Boolean; әдісін қолдануға болады True мәнін қайтарады, егер мәліметтер жиыны бос болса ... if MyTable.Bof and MyTable.Eof then ShowMessage('DataSet is empty'); ... Жазбаның ағымдағы нөмірін білу үшін property RecNo: Integer; қасиетін қолданамыз. Байттағы жазба өлшемінің қасиеті property RecordSize: Word; Мәліметтер жиынының әрқайсысы кестенің жол мәнінің жиынтығын көрсетеді. Мәліметтер жиыны жолдарының жиынтығы property Fields: TFields; қасиетін инкапсуляциялайды ал барлық керек жол параметрлері property FieldDefs: TFieldDefs; қасиетінде көрсетілген Мәліметтер жиынының жалпы жолдарының саны property FieldCount: Integer; қасиетін қайтарады ал жалпы жолдар саны BLOB типінде property BlobFieldCount: Integer; қасиетін қайтарады Ағымдағы жазбалар жолының мәніне қол жеткізу қасиеті property FieldValues[const FieldName: string]: Variant; default; FieldName параметріне қріс аты жазылады Бағдарламалау процесінде өңдеуші мәліметтер жиынының өрісіне тартылады. Егер for i := 0 to MyTable.FieldCount - 1 MyTable.Fields[i].DiplayFormat := '#.###'; Басқа жағдайда егер өрістің реттілігі және олардың құрамы function FieldByName(const FieldName: string): TField; әдісін қолдануға болады. Ол келесі негізде жазылады: MyTable.FieldByName('VENDORNO').Aslnteger := 1234; FieldName параметрінде берілетін өріс аты символдар регистріне сезімтал. procedure GetFieldNames(List: TStrings); әдісі List параметріне мәліметтер жиынының өрісінің толық тізімін TDataSet класы мәліметтер жиынын редакторлауды қамтамасыз ететін қасиеттерді Бірақ алдымен мәліметтер жиынын редакторлауға болады ма екенін property CanModify: Boolean; Редакторланатын жиын үшін True мәнін қайтаратын қасиетінің көмегімен procedure Edit; әдісін қолдануын ауыстыру керек. Өзгертілуді сақтау үшін procedure Post; virtual; әдісі қолданылады Өңдеуші оны өзі шақыра алады немесе басқа Post әдісін соңғы шақырудан соңғы қажеттіліктерді procedure Cancel; virtual; әдісімен беруге болады Жаңа бос жазба мәліметтер жиынының соңына procedure Append; әдісімен беріледі Жаңа бос жазба ағымдағы әдіс орынына қосылады procedure Insert; ал ағымдағы жазба және төмендегілер бір позицияға төмен Append және insert әдісін орындауда мәліметтер жиыны редакторлау Сіз толтырылған өрістерге жаңа жазбаны қоса аласыз.Ол үшін procedure AppendRecord(const Values: array of const); procedure InsertRecord(const әдісі қолданылады Ол былай жасалады: МуТаblе.AppendRecord([2345, 'New customer', '+7(812)4569012', 0, '']); Осы әдістерді шақырғаннан соң және олардың аяқталуында мәліметтер Әрекет ететін жазбалар үшін салыстырмалы түрде procedure SetFields(const Values: array of const); әдісін қолдана отырып барлық өрістерді толтыруға болады. procedure Delete; әдісімен өшіріледі. Осыдан мәліметтер жиыны ешқандай ескерту шығармайды. Ағымдағы жазбадағы барлық өрісті өшіру үшін procedure ClearFields; әдісі қолданылады. Бұдан жол бос болып қалады (NULL). Ағымдағы property Modified: Boolean; қасиеті хабарлайды. Мәліметтер жиынын оны қайтадан ашып, жаппай ақ жаңартуға procedure Refresh; әдісі қолданылады. Дегенмен ол редакторлауға келмейтін тек кестелер және сұраныстар Әр уақытта мәліметтер жиыны анықталған жағдайда болады. type TDataSetState = (dslnactive, dsBrowse, dsEdit, dslnsert, dsSetKey, қасиеті ағымдағы жиын туралы ақпарат береді. Мәліметтер жиынының жағдайы Мәліметтер жиынының функциалану процесінде әртүрлі операциялар қолданылуы Мәліметтер жиыны кез-келген уақытта бірнеше жағдайда болады. Әр Мәліметтердің барлық жағдайы екі топқа бөлінеді. Бірінші топқа мәліметтер жиыны автоматты түрде берілетін жағдай Екінші топқа қосымшадан басқаруға болатын жағдай жатады, мысалы, Мәліметтер жиынындағы қасиетті инкапсуляциалайтын TDataSet базалы класы, жағдайды Мәліметтер жиынының ағымдағы жағдайы TDataSetState типті state қасиетіне type TDataSetState = (dslnactive, dsBrowse, dsEdit, dslnsert, dsSetKey, Мәліметтер жиынының жағдайын басқару үшін open, Close, Edit, 1 кесте. Мәліметтер жиынының автоматты жағдайы Жағдай константасы Суретте dsNewValue NewValue қасиетіне сұраныс бергенде мәліметтер жиынының dsOldValue OldValue қасиетіне сұраныс бергенде мәліметтер жиынының dsCurValue CurValue қасиетіне сұраныс бергенде мәліметтер жиынының dsInternalCalc Өріс мағынасы есебінде FindKind = fklnternalCalc dsCalcFields onCalcFields әдісі орындалғанда қосылады dsBlockRead Мәліметтер жиыны бойынша тездетілген ауыстыру механизмінде dsOpening Open әдісімен немесе Active қасиетімен ашылуда dsFilter OnFilterRecord әдісі орындалғанда қосылады 2 кесте. Мәліметтер жиынының басқару жағдайы Константа жағдайы Әдіс Суреттеу dslnactive Close Мәліметтер жиыны жабық dsBrowse Open Қарап шығуға болады, бірақ dsEdit Edit Мәліметтерді редакторлауға болады dslnsert Insert Мәліметтер жиынына жаңа жазбалар dsSetKey SetKey Кілт бойынша іздеу механизмі Стандартты операцияларды орындағанда мәліметтер жиынының жағдайы қалай өзгеретінін Жабық мәліметтер жиыны әрқашан dsinactive активті жағдайда Ашылғанда мәліметтер жиыны dsBrowse мәліметін қарап шығу жағдайына 3 сурет. Мәліметтер жиынының жағдайын өзгерту сызбасы Мәліметтерді өзгертуде dsEdit редакторлау жағдайына өтуі керек, ол Қорытынды Мәліметтер жиынының функциалану процесінде әртүрлі операциялар қолданылуы Мәліметтер жиыны кез-келген уақытта бірнеше жағдайда болады. Әр Мәліметтердің барлық жағдайы екі топқа бөлінеді. Бірінші топқа мәліметтер жиыны автоматты түрде берілетін жағдай Мәліметтер жиынының индексінің параметрі TindexDef класында ұсынылған, ал property Name: String; қасиеті индекс атын анықтайды. Барлық индекс өрісіндегі тізім property Fields: String; қасиетінде құралады. property CaselnsFields: String; қасиеті тізім өрісін, сұрыптауда есептелмейтін символдар регистрін құрайды. Курстық жұмыс барысында жалпы Delphi бағдарламалау ортасының мүмкіндіктері Қолданылған әдебиеттер Богумирский Б. Эффективная работа на IBM PC в Вейскас Д. Эффективная работа с Microsoft Access 7.0 Вудкок Дж., Янг М. Эффективная работа с Microsoft Горев А., Макашарипов С., Эффективная работа с СУБД: Кириллов В.В. Основы проектирования реляционных баз данных. Учебное Потапкин А.В. Основы Visual Basic для пакета Microsoft Журнал «PC Magazine Russian Edition» 17, 1994, статья Журнал «PC Magazine Russian Edition» 15, 1994. Қосымша unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, ComCtrls, Grids, DBGrids, StdCtrls, Buttons, DBCtrls, ToolWin, DB, DBTables; type TJumissizdar = class(TForm) Panel2: TPanel; StatusBar1: TStatusBar; Panel3: TPanel; DBGrid1: TDBGrid; Panel4: TPanel; ToolBar1: TToolBar; ToolButton1: TToolButton; ToolButton2: TToolButton; ToolButton3: TToolButton; ToolButton4: TToolButton; ToolButton5: TToolButton; ToolButton6: TToolButton; ToolButton7: TToolButton; ToolButton8: TToolButton; ToolButton9: TToolButton; ToolButton10: TToolButton; ToolButton11: TToolButton; ToolButton12: TToolButton; ToolButton13: TToolButton; ToolButton14: TToolButton; ToolButton15: TToolButton; ToolButton16: TToolButton; procedure ToolButton2Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure ToolButton8Click(Sender: TObject); procedure ToolButton16Click(Sender: TObject); procedure ToolButton6Click(Sender: TObject); procedure ToolButton7Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Jumissizdar: TJumissizdar; implementation uses Unit3, Unit4, Unit5, Unit6, Unit12, Unit16; {$R *.dfm} procedure TJumissizdar.ToolButton2Click(Sender: TObject); begin Tirkeu.show; dm.JUMISSIZDAR.Insert; end; procedure TJumissizdar.ToolButton3Click(Sender: TObject); begin Sorttau.show; end; procedure TJumissizdar.ToolButton4Click(Sender: TObject); begin Izdeu.show; end; procedure TJumissizdar.ToolButton5Click(Sender: TObject); begin Vakansia.show; Vakansia.Bevel2.Visible:=True; Vakansia.Button5.Visible:=True; Vakansia.Button6.Visible:=True; end; procedure TJumissizdar.ToolButton8Click(Sender: TObject); begin dm.JUMISSIZDAR.Delete; end; procedure TJumissizdar.ToolButton16Click(Sender: TObject); begin jumissizdar.close; end; procedure TJumissizdar.ToolButton6Click(Sender: TObject); begin if toolbutton7.Enabled=false then toolbutton7.Enabled:=true; if not dm.JUMISSIZDAR.Eof then dm.JUMISSIZDAR.Next; if dm.JUMISSIZDAR.Eof then toolbutton1.Enabled:=false; end; procedure TJumissizdar.ToolButton7Click(Sender: TObject); begin if toolbutton6.Enabled=false then toolbutton6.Enabled:=true; if not dm.JUMISSIZDAR.Bof then dm.JUMISSIZDAR.Prior; if dm.JUMISSIZDAR.Bof then toolbutton7.Enabled:=false; end. 5 Мәліметтер жиынын ашу және сақтау Жаңа жазба жазу және сақтау Кілт бойынша іздеу механизмін қолдану SetKey Inactive Edit Browse Insert 

Мәтінді көшіру үшін белсенді жазылым қажет.

Пайдаланушы ID: 351275

Жарияланған күні: