4.2 Мәліметтер қорымен жұмыс істеу құралдары. Мәліметтер қоры қосымшалары компоненттері. Мәліметтер қоры кестесін құру
Borland C++ Builder ортасы деректер қорына қатынаудың үлкен мүмкіндіктеріне ие. Деректер қоры тек сақтауға емес, сонымен қатар ақпараттарды таңдау және өңдеуге, маңызды аспектілердің бірі оларға сұраныстар құруға арналған.
C++ Builder-дегі сұраныстар – өзімен бірге деректер жиынын ұсынатын объект. Әдетте сұраныстар құру үшін TQuery компоненті – TDataSet абстрактілі класының тума класстары қолданылады.
TQuery компоненті
TQuery компоненті TTable компоненті сияқты, TDataSet компонентінің барлық қасиеттеріне ие.
TDataSource компоненті Data Controls компоненттері және TQuery компоненті арасындағы өзара әрекеттерді басқарады. Әдетте қосымшада әрбір TQuery компонентіне бір DataSource компоненті болады.
TQuery компонентінің жиі қолданылатын қасиеттері:
Active - берілген сұраныс ашық (true) немесе жабық (false) екенін көрсетеді.
Eof, Bof – бұл қасиеттер, ағымдағы жазба көрсеткіші деректер жиынының сәйкесінше бірінші немесе соңғы жолында болғанда true мәнін қабылдайды, яғни сұраныстың орындалу нәтижесі болатын.
DatabaseName - сұраныс жүзеге асатын каталог аты немесе қашықтағы ДҚ псевдонимі (alias).
DataSource – параметрленген сұраныстар үшін деректер көзін көрсетеді.
Fields – бұл қасиет тек орындалу уақытында қол жетімді (run-time only) және реттік нөмірі бойынша анықталған өрісті модификациялау немесе оқу үшін қолданылады.
Params – құрамында параметрленген сұраныстар үшін параметрлер болады, келесі мысалдағы SomeNo сияқты
Select * from Orders where CustNo=:SomeNo
SQL – жолдық массив, құрамында SQL сұраныс операторының мәтіні бар.
TQuery компоненті экранда көрінетін деректер жиынын құру және анықтау, жолдарды өңдеу, жою және қою үшін SQL операторларын қолдануға рұқсат береді.
RequestLive – егер бұл қасиет true мәнін иемденсе, сұраныс синтаксисінің нәтижесі, қолданушы деректер өзгерісін ДҚ-да сақтай алады. Егер RequestLive false мәнін иемденсе сұраныс нәтижесі read-only күйіне қайтарылады.
TQuery компонентінің келесі әдістері жиі қолданылады:
ExecSQL – SQL-сұраныстарды орындайды. Бұл әдісті деректерді жою немесе өңдеу, қою кезінде қолдану керек. SELECT (деректерді таңдау) операторы орындалғанда Open әдісін қолдану керек. Келесі мысал ExecSQL әдісін қолдануды көрсетеді:
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("Delete emp where empno=1010");
Query1->ExecSQL();
Open - TQuery компонентін ашады. Ол Active қасиетіне true мәнін меншіктеу эквиваленті. Сұраныс нәтижесі деректер жиыны болғанда қолданылады (әдетте мұндай сұраныстар SELECT операторынан басталады). Open әдісін қолдану мысалы:
Query1->Open();
Close - TQuery компонентін жабады. Close шақыру эквиваленті Active қасиетіне false мәнін меншіктеу. Close әдісін қолдану мысалы:
Query1->Close();
TQuery компоненттерінің жиі қолданылатын әдістері:
First, Last, Next, Prior ағымдағы жазба көрсеткішін сәйкесінше бірінші, соңғы, келесі және алдынғы жазбаларға ауыстырады.
Insert, Edit, Delete, Append, Post, Cancel – сұраныс нәтижесін түрлендіреді. Insert әдісі жол сұранысы нәтижесіне енгізуге мүмкіндік береді, мысалы:
Query2->Insert();
Query2->Fields[0]->AsInteger = 100;
Query2->Fields[1]->AsString =Edit1->Text;
Query2->Post();
Post әдісі Insert, Update немесе Delete операцияларын бекітеді. Cancel әдісі Insert, Delete, Edit немесе Append аяқталмаған операцияларын болдырмайды.
Visual Query Builder
Visual Query Builder (VQB) – SQL-ге негізделген сұраныстар құрудың визуалды құралы болып табылады. Бұл құрал арқылы комплексті сұраныстар құруға болады.
Visual Query Builder –ді TQuery компонетін таңдау арқылы және тышқанның оң жағын басып, пайда болған контексті мәзірден Query Builder опциясын таңдау арқылы шақыруға болады.
Ескерту. Visual Query Builder - Borland C++ Builder барлық версиясының комплектісіне кірмеуі немесе орнатылмаған болуы мүмкін. Бұл жағдайда контекстті мәзірде сәйкес опция болмайды.
Query Builder таңдағаннан кейін экранда Databases диалогтік панелі пайда болады, ол ДҚ таңдауға және онымен байланысты жүзеге асыруға мүмкіндік береді /4.2.1-сурет/.
4.2.1-сурет. Деректер қоры псевдоним таңдау
Деректер қорымен байланысқаннан кейін экранда Visual Query Builder терезесі шығады және сұраныста қолданатын кестелерді таңдау диалогтық панелі пайда болады /4.2.2-сурет/.
4.2.2-сурет. ДҚ-мен байланысқаннан кейін Visual Query Builder
терезесі және Add Table диалогтық панелі пайда болады
Visual Query Builder инструменттер панелі кестеде көрсетілген.
Add Table диалогтік панелі /4.2.3-сурет/ Visual Query Builder ашылған кезде немесе диалогтік панелдің сәйкес батырмаларын таңдағанда пайда болады. Ол сұранысқа кестелер енгізеді, ағымдағы ДҚ барлық кестелер тізімін шығарады. Егер Include System Tables опциясын белгілесек, сұраныстар құру үшін берілген ДҚ-ның жүйелік кестелері қол жетімді болады.
4.2.3-сурет. Visual Query Builder жұмыс бетінде тізімнен
таңдаған кесте пайда болады
Сұранысқа бір немесе бірнеше кесте енгізу үшін келесілерді орындау қажет:
Егер Add Table диалогтік панелі экранда жоқ болса, оны экранға шығару үшін инструменттер панелінен Table басылады.
Диалогты панелдегі кесте тізімінен кесте аты таңдалады және Add батырмасын басамыз. Таңдалған кесте құрылы сипаттамсы Visual Query Builder терезесінің жоғарғы бөлігінде көрінеді.
керекті кестелер сұранысқа енгізілгенше екінші қадам қайталана береді, соңынан Close батырмасы басылады.
Кестелердің бірінің бағанын сұранысқа енгізу үшін, баған атын таңдау керек және осы бағанды терезенің төменгі бөлігіндегі кестеге орналастырады.
4.2.4-сурет. Аралас сұраныс құру
Бірнеше кестелер ақпараттарын араластыру үшін, әртүрлі кестелер қалай байланысатынын анықтау керек. Visual Query Builder көмегімен кестелер байланысына қызмет ететін бағандарды анықтауға болады. осы мақсатта, кестеаралық байланысты жүзеге асыратын, байланысқан кестелердің бірінен баған атын таңдау керек, сосын тышқанның сол жағымен басып және курсорды басқа кестенің сәйкес бағанына алып барамыз. Нәтижесі – суретте көрсетілген.
Кестелердің байланысу критерийін өңдеуге және көруге болады, яғни Visual Query Builder терезесінің жоғары бөлігінде байланысты көрсететін сызықты екі рет шерту арқылы. Осылай Join диалогтік блогы пайда болады /4.2.5-сурет/:
4.2.5-сурет. Кестелердің байланысу критерийін таңдау
Сұраныстың сұрыптау критерийін анықтау үшін, Visual Query Builder терезесінің төменгі бөлігіндегі кестеден Criteria жолын қолдану керек.
Criteria жолы SQL операторының WHERE ұсынған сұраныс өрнектерін қабылдайды, кестеде көрсетілген:
Есептейтін өріс құру үшін батырмамен инструменттер панеліндегі Expression басамыз. Expression диалогтік панелі пайда болады /4.2.6-сурет/.
4.2.6-сурет. Expression диалогтік панелін шақыру
Expression диалогтік панелі сұраныста арифметикалық операцияларды көбейту, бөлулер, қосу, алу, бағандардың аты және avg, count, min, max, sum сияқты құрама өрнектерді қолдануға мүмкіндік береді.
Visual Query Builder-мен генерацияланған сұраныс орындауға болады. Сұраныс нәтижесі Result Window (нәтижелер терезесі) диалогтік панеліндегі экранда көрінеді. Бұл терезе бағандар сұранысы, таңдау критерийі, топтастыру және сұрыптау критерийлері дұрыс анықталғанына көз жеткізуге мүмкіндік береді. Сұранысты орындау үшін, батырмамен инструменттер панеліндегі Run-ды басу қажет. Result Window терезесі пайда болады /4.2.7-сурет/.
4.2.7-сурет. Сұраныс нәтижесі Result Window экранында көрінеді
4.2.8-сурет. SQL Statement терезесіндегі
SQL генерацияланған операторы
Сұраныс мәтінін тексеруге болады, SQL Statement терезесін қарау арқылы. Бүл терезе генерацияланған SQL операторын көрсетеді. Сұраныстар бағаны, таңдау критерийі, топтастыру немесе сұрыптау критерийі өзгергенде және қосқанда SQL Statement терезесі автоматты өңделеді /4.2.8-сурет/.
Visual Query Builder жұмысын аяқтау үшін инструменттер панеліндегі жасыл белгісі бар батырманы басу керек. Осыдан кейін TQuery компонентінің Visual Query Builder белсенді болған SQL қасиетіне SQL-сұранысының генерацияланған мәтіні меншіктеледі.
Достарыңызбен бөлісу: |