Файл: 02. 09. 2010 1 басылым 03. 09. 2013 2 басылым.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.11.2023

Просмотров: 81

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


Ұсыныстарды жою.

Ұсыныстарды жою DROP VIEW операторының көмегімен орындалады, оны шақырғанда RESTRICT және CASCADE параметрлері көрсетілуі мүмкін. Бұл параметрлер басқа ұсыныстар және/немесе шектеулер сілтелетін ұсыныстарды жою кезіндегі әрекеттерді анықтайды. RESTRICT вариантын падаланғанда, бұл жағдайда қате туралы хабарлама шығарылады, және жою орындалмайды. Егер CASCADE режимі пайдаланылса, онда DROP VIEW операторының орындалуы, базалық ұсыныстардың және шектеулердің жойылуына әкеледі.

DROP VIEW операторының типтік синтаксисі келесі түрде болады:

DROP VIEWимя_представления [RESTRICT | CASCADE]

Дәріс №12.

Дәріс тақырыбы: Сақталатын процедуралар, оларды құру, орындау және жою

Сақталатын процедуралар (Stored Procedure)- олар байланысқан SQL-операторларының топтары. Сақталатын процедураларды пайдалану мәліметтер қорымен жұмыстың қосымша икемділігін қамтамасыз етеді, өйткені сақталатын процедураларды орындау SQL жеке операторлар тізбегінен әлдеқайда қарапайымдау.

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

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

Сақталатын процедураларды пайдаланудың негізгі артықшылықтары келесіде қорытындыланады:

  • Сақталатын процедуралар логика бөлігін мәліметтер қорының серверіне шығаруға мүмкіндік береді. Ол ақпараттық жүйенің мәліметтер қорының клиенттік бөлігінен тәуелділігін әлсіретеді;

  • Сақталатьын процедуралар жобаның модульдігін қамтамасыз етеді. Олар бір мәліметтер қорына хабарланатын клиенттік қосымшалар үшін жалпы болады, ол кодтың қайталануын болдырмайды және қосымша өлшемін кішірейтеді;

  • Сақталатын процедуралар қосымшалардың бәрге жүруін оңайлатады:процедуралар жаңартқан кезде өзгерулер автоматты түрде барлық қосымшаларда бейнеленеді;

  • Сақталатын процедуралар ақпараттық жүйенің жұмысының тиімділігін арттырады:олар клиентпен емес, желілік трафикті төмендететін сервермен орындалады;

  • Сақталатын процедуралардың орындалу жылдамдығы жеке SQL операторлар тізбегінен жоғары. Ол сақталатын процедуралардың серверде компиляцияланған түрде сақталуына байланысты.

Сақталатын процедуралардың екі түрін бөледі:


  • Таңдау процедуралары қосымшалар оларды мәліметтерді таңдау операторында кесте немесе ұсыныстар орнына пайдалануы мүмкін;

  • Орындалатын процедуралар олар арнайы операторлар пайдаланылып шақырылады. Орындалатын процедура шақырылатын программаның нәтижелерін қайтармауы мүмкін.

Сақталатын процедураларды құру.

Сақталатын процедураларды құру үшін CREATE PROCEDURE опрераторы пайдаланылады.

CREATE PROCEDURE операторы мәліметтер қорынан жаңа сақталатын процедураны анықтайды. Процедуралар тілі SQL таратуларынан тәуелді, бірақ ереже бойынша SQL барлық инструкцияларын және мыналарды қосады:

  • Шартты операторлар;

  • Цикл операторларының әртүрлі түрлерін;

  • Ерекше жағдайларды өңдеу мүмкіндіктерін.

Сақталатын процедуралар тақырыптан және денесінен тұрады. Процедураның тақырыбы:

  • Мәліметтер қорындағы кесте мен процедура аттарының ішінде ерекше болуы тиіс процедура атынан;

  • Процедура шақырылатын программадан қабылдайтын кіретін параметрлер және олардың мәліметтері типтерінің тізімінен;

  • Шығатын параметрлер және олардың мәліметтері типтерінің тізімінен тұрады, егер процедура мәндерді шақырылатын программаға қайтарса.

Процедура денесі мыналардан тұрады:

  • Жергілікті айнымалылар және олардың мәліметтері типтерінің тізімінен (егер олар процедура кодында пайдаланылса);

  • BEGIN және END кілттік сөздерінің арасында қорытылған процедуралар және триггерлер тіліндегі инструкция блогынан.

Сақталатын процедураларды орындау.

Сақталатын процедураны орындауға жіберетін оператор процедураға тәуелді болады. Таңдау процедурасы оларға SELECT -мәліметтерді таңдау операторының көмегімен хабарласқанда орындалады.

Орындалатын процедураны шақыру үшін арнайы EXECUTE операторын пайдаланған жөн.

Сақталатын процедураларды жою.

Сақталатын процедураларды жою үшін DROP PROCEDURE операторы пайдаланылады. Бұл оператор синтаксисі келесі түрде болады:

DROP PROCEDUREимя_хранимой_процедуры
Дәріс №13.

Дәріс тақырыбы: Триггерлер, құру және жою операторлары

Триггерлер сақталатын процедуралардың бір түрі. Бірақ сақталатын процедуралардан айырмашылығы триггерлердің орындалуы SQL операторын шақыру нәтижесінде емес, мәліметтер қорына өзгерістер енгізетін мәліметтерді басқару операторларының бірінің орындалуы кезінде орындалады. Мұнда триггерлер мәліметтерді басқару операторларының орындалуына дейін де орындалады.



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

  • Пайдаланушы кесте өрістеріне рұқсат етілген мәндерді енгізгеніне кепілдік беру үшін енгізілетін мәліметтерді бақылау мүмкіндігі;

  • Триггерлермен байланысқан кестелерді пайдаланатын қосымшаларда триггелердегі өзгерту көрінетін бірге жүретін қосымшаларды оңайлату;

  • Кестелердің өзгертулерін автоматты құжаттау қосымша өзгерістер журналын кестеде өзгеріс болған сайын орындалатын триггерлер көмегімен басқару.


Триггерлерді құру.

Триггерлерді құру үшін CREATE TABLE операторы пайдаланылады. Сақталатын процедуралар сияқты триггерлер де тақырып пен денесінен тұрады. Триггер тақырыбы мынадан тұрады:

  • Триггер аты,мәліметтер қоры ішінде керемет;

  • Триггер байланысқан кесте аты;

  • Триггер қашан орындалатынын анықтайтын инструкциялар;

Триггер денесі мыналардан тұрады:

  • Жергілікті айнымалылар және мәліметтердің типтерінің тізімінен (егер олар триггер кодында пайдаланылмаса);

  • BEGIN және END кілттік сөздерінің арасында қорытылғагн процедуралар мен триггерлер тіліндегі инструкция блогынан. Блоктың ішінде басқа блок болуы мүмкін.

Сонымен триггер мен сақталатын процедураның айырмашылығы тек тақырыбында.

Триггер кестемен байланысқан. Кестеге бөлінген артықшылықтары бар кесте иесі мен кез-келген пайдаланушы онымен байланысқан триггерлерді автоматты түрде орындауға хұқы бар.

Триггерлерді жою.

Триггерлерді жою үшін DROP TRIGGER операторы пайдаланылды. Бұл оператордың жалпы түрдегі синтаксисі төмендегідей:

DROP TRIGGER имя_триггера

Дәріс №14.

Дәріс тақырыбы: Мәліметтерді басқару, кестедегі берілгендерді өзгерту

Мәліметтер қорында сақталатын мәліметтерді басқару үшін, командалардың жеке типтері ретінде бөлінетін және мәліметтерді басқару тілі (DML-Data Manipulation Language ) деп аталатын SQL операторларының типтері пайдаланылады. DML операторларының көмегімен қолданушы кестеге жаңа мәліметтерді жүктеп, бар мәліметтерді түрлендіруге және жоюға болады:

SQL тілінде тек қана 3 негізгі DML операторы анықталған:

  • INSERT;

  • UPDATE;

  • DELETE.

Кестеге жаңа ақпаратты қосу


Мәліметтер қорының кестесіне жаңа ақпаратты қосу процесі әдетте мәліметтерді жүктеу деп аталады. Мәліметтерді жүктеу үшін INSERT операторы пайдаланылады.

Кестеге жаңа жазу қосу

Кестеге жаңа жазу қосу үшін INSERT операторының келесі синтаксистік формасы пайдаланылады:

INSERT INTO имя_таблицы

VALUES (значение_1.значение_2….значение_N)

INSERT операторының бұл формасын пайдаланғанда VALUES тізімінде мәндер саны кесте өрістерінің санына тең ьболуы керек. Және де VALUES тізімінде көрсетілген әдбір мәннің типі, өріс мәліметтерінің типімен сәйкес болуы керек.

Символдық типтер мен даталарға қатысты мәндер апостроф ішінде тұруы тиіс. Мәндер тізімінде NULL мәні де пайдаланылуы мүмкін.

Мысал қарастырайық. СПЕЦИАЛЬНОСТЬ кестесі келесі оператор пайдаланылып құрылған:

CREATE TABLE ДОЛЖНОСТИ (

Код_должности INTEGER NOT NULL PRIMARY KEY

Должность VAR CHAR (50) NOT NULL UNIQUE.

Разряд INTEGER NOT NULL).

Зарплата DECIMAL (7.2) NOT NULL).

Осы кестеге жаңа жазу қосу үшін келесі INSERT операторын пайдаланған жөн:

INSERT INTO Должности

VALUES (12 ‘Ведущий программист’.12.2000.00)

Кестенің жеке өрістеріне мәліметтер енгізу

Кестеге мәліметтер қосқанда барлық өрістерін емес, кейбіреулерін ғана толтыруға болады. Бұл жағдайда INSERT операторының келесі синтаксистік формасы пайдаланылады:

INSERT INTO имя_таблицы (имя_поля_1.имя_поля_2…имя_поля_N)

VALUES (значение_1.значение_2…значение_ N)

Мысалы, СТУДЕНТЫ кестесіне жаңа студент туралы ақпарат қосқанда, студенттің толық аты туралы ақпаратты көрсетсе болғаны. Бұл жағдайда келесі операторды пайдалануға болады:

INSERT INTO Студенты (Номер_зач_книжки.Имя. Фамилия.Отчество)

VALUES (234.’Абылгазина’.’Айнур’.’Кадыровна’)

Бұл оператор орындалғанда басқа барлық өрістерге NULL мәні енгізіледі. Кесте атынан кейін жақша ішінде көрсетілмейтін өрістердің NOT NULL шектеуі болмайды, әйтпесе INSERT операторын орындау талабы табыссыз аяқталады.

Басқа кестедегі мәліметтерді кестеге енгізу

Кейде бір кестедегі ақпаратты екінші кестеге тасымалдау қажет болады. Бұл типтегі операцияларды INSERT опареторымен SELECT мәліметтерді таңдау операторының комбинациясының көмегімен орындауға болады.

INSERT және SELECT операторын біріктіріп, басқа кестеге сұраныс орындалуы нәтижесінде алынатын мәліметтерді кестеге қогсуға болады. Бұл жағдайда INSERT операторының синтаксисі келесі түрде болады:


INSERT INTOимя_таблицы(имя_поля_1.имя_поля_2…имя_поля_N)

FROM имя_таблицы

WHERE условие.

Бұл операторда VALUES сөйлемінің орнына SELECT операторы пайдаланылады. Бұл оператордың синтаксисінің қысқаша түсініктемесі. SELECT сөзінен кейін мәндері таңдамаға қосылатын өрістер тізімі көрсетіледі (егер SELECT кейін * символын көрсетсе, таңдамаға барлық өрістер қосылады).FROM сөйлемі мәліметтерді таңдау орындалатын кестенің атын көрсету үшін пайдаланылады. WHERE сөйлемі міндетті емес және таңдамаға қосылатын мәліметтерге шектеулерді қосу үшін пайдаланылады.

Кесте атынан кейін INSERT операторында жақша ішінде көрсетілетін өрістердің саны таңдамаға қосылатын өріс санына тең болуы керек. Өрістердің сәйкестігі, олардың тізбектелу ретімен анықталады: SELECT операторының тізіміндегі 1-ші өрісі сәйкес келеді және т.с.с.

Кестеде сақталатын мәліметтерді өзгерту

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

Кестенің бір өрісіндегі мәліметтерді түрлендіру

Кестенің бір ғана өрісіндегі мәліметтерді өзгерту үшін UPDATE операторының қарапайым формасы пайдаланылады:

UPDATE имя_таблицы

SET имя_поля=значение

[WHERE условие]

UPDATE операторының синтаксистік элементтерінің мағынасы мынадай: UPDATEкілттік сөзінен кейін мәліметтер түрлендірілетін кестенің аты көрсетіледі, SET кілттік сөзінен кейін аты берілген өріске жаңа мәді меншіктеу орындалады. Міндетті емес WHERE сөйлемінің көмегімен берілген шарт, түрлендірілетін жазулар санын анықтайды .

Мысалы, СТУДЕНТЫ кестесінде сақталған факультет студентінің телефон номерін өзгерту қажет болсын. Бұл жағдайда UPDATE операторы бір өрістің және бір жазудың ғана мәнін өзгертуі керек. Сондықтан WHERE сөйлемінде бізге қажетті жазуды таңдайтын шартты көрсету керек. Қарапайым шешімі. «Код_физического_лица» алғашөқы кілтіің өрісін қажетті жазуды таңдауға пайдалану болып табылады. Осы өрісте сақталатын мәнде қызметкерді бірмәнді анықтайды. Онда телефон номерін өзгертуді орындайтын UPDATE операторының түрі келесідей болады:

UPDATE Физические_лица

SET Телефон=(095)2347890