28
– сақталатын процедуралардың орындалу жылдамдығы жеке SQL
операторлар тізбегінен жоғары. Ол сақталатын процедуралардың серверде
компиляцияланған түрде сақталуына байланысты.
Сақталатын процедуралардың екі түрін бөледі:
– таңдау процедуралары қосымшалар оларды мәліметтерді таңдау
операторында кесте немесе ұсыныстар орнына пайдалануы мүмкін;
– орындалатын процедуралар олар арнайы операторлар пайдаланылып
шақырылады.
Орындалатын
процедура
шақырылатын
программаның
нәтижелерін қайтармауы мүмкін.
Сақталатын процедураларды құру
Сақталатын процедураларды құру үшін CREATE PROCEDURE
опрераторы пайдаланылады.
CREATE PROCEDURE операторы мәліметтер қорынан жаңа сақталатын
процедураны анықтайды. Процедуралар тілі SQL таратуларынан тәуелді, бірақ
ереже бойынша SQL барлық инструкцияларын және мыналарды қосады:
– шартты операторлар;
– цикл операторларының әртүрлі түрлерін;
– ерекше жағдайларды өңдеу мүмкіндіктерін.
– сақталатын процедуралар тақырыптан және денесінен тұрады.
Процедураның тақырыбы:
– мәліметтер қорындағы кесте мен процедура аттарының ішінде ерекше
болуы тиіс процедура атынан;
– процедура
шақырылатын
программадан
қабылдайтын
кіретін
параметрлер және олардың мәліметтері типтерінің тізімінен;
– шығатын параметрлер және олардың мәліметтері типтерінің тізімінен
тұрады, егер процедура мәндерді шақырылатын программаға қайтарса.
– процедура денесі мыналардан тұрады:
– жергілікті айнымалылар және олардың мәліметтері типтерінің тізімінен
(егер олар процедура кодында пайдаланылса);
– BEGIN және END кілттік сөздерінің арасында қорытылған
процедуралар және триггерлер тіліндегі инструкция блогынан.
Сақталатын процедураларды орындау
Сақталатын процедураны орындауға жіберетін оператор процедураға
тәуелді болады. Таңдау процедурасы оларға SELECT -мәліметтерді таңдау
операторының көмегімен хабарласқанда орындалады.
Орындалатын процедураны шақыру үшін арнайы EXECUTE операторын
пайдаланған жөн.
Сақталатын процедураларды жою
Сақталатын процедураларды жою үшін DROP PROCEDURE операторы
пайдаланылады. Бұл оператор синтаксисі келесі түрде болады:
DROP PROCEDUREимя_хранимой_процедуры
29
2.3.4 Мәліметтерді басқару, кестедегі берілгендерді өзгерту
Мәліметтер
қорында
сақталатын
мәліметтерді
басқару
үшін,
командалардың жеке типтері ретінде бөлінетін және мәліметтерді басқару тілі
(DML-Data Manipulation Language ) деп аталатын SQL операторларының
типтері пайдаланылады. DML операторларының көмегімен қолданушы кестеге
жаңа мәліметтерді жүктеп, бар мәліметтерді түрлендіруге және жоюға болады:
SQL тілінде тек қана 3 негізгі DML операторы анықталған:
– INSERT;
– UPDATE;
– DELETE.
Кестеге жаңа ақпаратты қосу.
Мәліметтер қорының кестесіне жаңа ақпаратты қосу процесі әдетте
мәліметтерді жүктеу деп аталады. Мәліметтерді жүктеу үшін INSERT
операторы пайдаланылады.
Кестеге жаңа жазу қосу.
Кестеге жаңа жазу қосу үшін INSERT операторының келесі синтаксистік
формасы пайдаланылады:
INSERT INTO имя_таблицы
VALUES (значение_1.значение_2….значение_N)
INSERT операторының бұл формасын пайдаланғанда VALUES тізімінде
мәндер саны кесте өрістерінің санына тең ьболуы керек. Және де VALUES
тізімінде көрсетілген әдбір мәннің типі, өріс мәліметтерінің типімен сәйкес
болуы керек.
Символдық типтер мен даталарға қатысты мәндер апостроф ішінде тұруы
тиіс. Мәндер тізімінде NULL мәні де пайдаланылуы мүмкін.
Кестенің жеке өрістеріне мәліметтер енгізу.
Кестеге мәліметтер қосқанда барлық өрістерін емес, кейбіреулерін ғана
толтыруға болады. Бұл жағдайда INSERT операторының келесі синтаксистік
формасы пайдаланылады:
INSERT INTO имя_таблицы (имя_поля_1.имя_поля_2…имя_поля_N)
VALUES (значение_1.значение_2…значение_ N)
Басқа кестедегі мәліметтерді кестеге енгізу.
Кейде бір кестедегі ақпаратты екінші кестеге тасымалдау қажет болады.
Бұл типтегі операцияларды INSERT опареторымен SELECT мәліметтерді
таңдау операторының комбинациясының көмегімен орындауға болады.
INSERT және SELECT операторын біріктіріп, басқа кестеге сұраныс
орындалуы нәтижесінде алынатын мәліметтерді кестеге қогсуға болады. Бұл
жағдайда INSERT операторының синтаксисі келесі түрде болады:
INSERT INTOимя_таблицы(имя_поля_1.имя_поля_2…имя_поля_N)
FROM имя_таблицы
WHERE условие.
Бұл операторда VALUES сөйлемінің орнына SELECT операторы
пайдаланылады. Бұл оператордың синтаксисінің қысқаша түсініктемесі.
30
SELECT сөзінен кейін мәндері таңдамаға қосылатын өрістер тізімі көрсетіледі
(егер SELECT кейін * символын көрсетсе, таңдамаға барлық өрістер
қосылады).FROM сөйлемі мәліметтерді таңдау орындалатын кестенің атын
көрсету үшін пайдаланылады. WHERE сөйлемі міндетті емес және таңдамаға
қосылатын мәліметтерге шектеулерді қосу үшін пайдаланылады.
Кесте атынан кейін INSERT операторында жақша ішінде көрсетілетін
өрістердің саны таңдамаға қосылатын өріс санына тең болуы керек. Өрістердің
сәйкестігі, олардың тізбектелу ретімен анықталады: SELECT операторының
тізіміндегі 1-ші өрісі сәйкес келеді және т.с.с.
Кестеде сақталатын мәліметтерді өзгерту.
Кестеге енгізіліп қойылған мәліметтерді өзгерту үшін UPDATE
операторы пайдаланылады. Бұл опаретор кестеге жаңа жазу қоспайды, бар
мәліметтерді жаңаға ауыстырады. UPDATE операторы бір өріске де, бірнеше
өрістерге де қолданылуы мүмкін. Өзгертілетін жазулардың саны қолданушы
қажеттілігіне тәуелді - UPDATE көмегімен бір немесе бірнеше жазуларды
өзгертуге болады.