Оқулық «Білім беруді дамытудың федералды институты»



жүктеу 2,79 Kb.
Pdf просмотр
бет88/101
Дата20.05.2018
өлшемі2,79 Kb.
#15312
түріОқулық
1   ...   84   85   86   87   88   89   90   91   ...   101

Аталған  бағандардың  әрқайсысын  өзгерткенде,  сәйкес  мән 
тағайындалады. SELECT нұсқаулығында  көрсетілгендей  шартты 
қанағаттандыратын  барлық  жазбалар  үшін  өзгертулер  жасалады. SET 
сөйлемі  орындалатын  өзгертулердің  тізімін:  өзгертуге  болатын 
айнымалының  аты  және  бағаның  жаңа  мәні  теңдік  белгісінен  кейін 
анықталады.  Мән  INSERT  операторы  сияқты,  күрделі  күрделі  өрнек 
болуы мүмкін. Үтірлер бойынша келесі SET тармақтары кестедегі басқа 
бағандардың  мәндерін  тізімдеуі  мүмкін.  Оператордағы  WHERE 
тармағы  қолданыстағы  деректерді  өзгерту  әрекеті  қолданылатын 
жолдардың жиынын анықтайды. Егер бұл сөйлем көрсетілмесе, кестенің 
барлық жолдары өзгереді:
 
UPDATE 
ПРОДАЖИ SET Құны=Құны*2 WHERE Тауар = 
«
Ұн»
 
Өнім  кестесіндегі  оператор  қызметінің  нәтижесі  ретінде  «Баға» 
өрісіндегі  «Тауар»  өрісінің  мәні  «Ұн»  болып  табылатын  барлық 
жазбаларда екі еселенген болады. 
DELETE операторы нысаннан жазбалар тобын жою үшін 
пайдаланылады. Белгілі бір жағдайда тек бір ғана жазбаны жоюға 
болады. DELETE мәлімдемесі пішімі:
 
DELETE FROM <
нысан>
 
[WHERE <
шарты>]
 
Іздеу шартына сәйкес келетін барлық жазбалар жойылады. WHERE 
сөйлемін жойсаңыз, барлық жазбалар нысаннан жойылады. 
Төменде САТЫЛЫМДАР кесте қантты сататын фактілердің барлық 
жазбаларын жойатын мысал болып табылады:
 
DELETE 
САТЫЛЫМДАРWHERE Тауар= «Қант»
 
12.5.
 
САҚТАЛАТЫН ІС ШАРАЛАР  
МЕН ТРИГГЕРЛЕР
 
12.5.1. 
Сақталатын іс шаралар 
мен тиггерлердің тілі
 
Сақталған  процедуралар  мен  триггерлер  -  дерекқордың 
метадеректер  аймағында  сақталған  бағдарламалар.  Олар  сервер 
жағында  орындалады,  ол  көптеген  жағдайларда  үнемдеуге  мүмкіндік 
б
і
 
271
 


Сақталған  процедураларға,  триггерлерге  және  клиенттік 
қосымшаларға  жалпыға  қол  жетімділікке  қол  жеткізуге  болады. 
Тригерге тікелей қол жеткізуге болмайды - кесте (деректерді өзгерту) 
немесе  дерекқор  оқиғасы  үшін  белгілі  бір  оқиға  болған  кезде  олар 
автоматты түрде шақырылады. Әрбір іс-шара кесте үшін екі кезеңі бар - 
тиісті оқиғаға (дейін) дейін және іс-шараға (кейін) пайда болған соң. 
SQ
L тілінің кеңейтімі сақталатын процедуралар мен триггерлердегі 
деректерді  өңдеуге  арналған  алгоритмдерді  сипаттау  үшін 
қолданылады.  Бұл  кеңейтім  процедуралық  SQL  (PSQL)  немесе 
сақталатын процедуралар тілі мен триггерлер деп аталады. Тіл әдеттегі 
тағайындалу  операторларын,  филиал  операторларын  және  циклдік 
операторларды қамтиды. Триггерлерде нақты мәтінмән айнымалыларын 
пайдалануға болады. 
Сақталған  рәсімдер  мен  триггерлердің  тілі  классикалық 
бағдарламалау  тілдерінің  барлық  негізгі  құрылымдарын  қамтиды. 
Сонымен қатар, ол дерекқор кестелерінен (INSERT, UPDATE, DELETE 
және SELECT) бар деректерді қосу, өзгерту, жою және алу үшін бірнеше 
өзгертілген  операторларды  қамтиды.  Сақталған  процедуралардың 
тілінде ешқандай метадеректер өзгермейді. 
Сақталған  процедуралар  мен  триггерлерде  белгілі  бір  оқиғалар 
(оқиғалар)  туралы  клиенттерге  хабарлауға,  кедендік  ерекшеліктерді 
шығаруға мүмкіндік беретін құралдарды пайдалануға болады. Деректер 
қорын  қосу  әрекеттерін  орындауға  жол  берілмейді,  транзакцияны 
бастауға,  транзакцияларды  жасауға,  құтқару  жолдарын  жасауға, 
құтқарушыларға  оралу,  транзакцияларды  растауға  немесе  жоюға 
болмайды.  Сақталған  процедура  мен  триггер  сақталатын  процедура 
тікелей  анықталған  транзакция  контекстінде  орындалады  немесе 
деректерді  өңдеу  операциясы  дерекқорда  орындалды,  нәтижесінде 
триггер  автоматты  түрде  іске  қосылды.  Егер  дерекқор  дерекқордан 
қосылып, дерекқордан ажыратылған кезде шақырылатын болса, онда ол 
үшін әдепкі транзакция басталады. 
Сақталған  процедуралар  мен  триггерлер  жасау  синтаксисінде 
тақырып  пен  денені  таңдауға  болады.  Тақырыпта  бағдарлама 
нысанының  атауы,  жергілікті  айнымалылардың  сипаттамасы  бар. 
Триггерлер үшін тақырып дерекқор оқиғасын және триггер автоматты 
түрде  іске  қосылатын  кезеңді  анықтайды.  Сақталған  рәсімнің 
тақырыбында  кіріс  және  шығыс  параметрлерін  көрсетуге  болады. 
Сақталған процедураның немесе триггердің құралы - бұл блок
 
272
 


бағдарлама  орындалатын  іс-әрекеттердің  сипаттамасын  қамтитын 
оператор.  Операторлар  блогы  оператордың  BEGIN  және  END 
жақшаларынан  тұрады.  Бағдарламалардың  өзінде,  дәйекті  және 
кірістірілген блоктың еркін саны болуы мүмкін. 
Барлық іс-шаралар үлгі негізделген, сақталатын процедуралар мен 
триггерлер деректер өңдеу және модификациялау ирек жақша BEGIN 
және END болып есептілігін блогында орындалады. 
Триггерлер  және  сценарий  шеңберінде  сақталатын  процедуралар 
жазған  кезде,  (SQL  стандарттары  үшін,  нүктелі  үтірмен) 
операторларының  символы  аяқтау  пайдалануға  қатысты  белгісіздік 
болдырмау  үшін,  дерекқорға  қажет  бағдарламалық  қамтамасыз  ету 
нысандарын  құру  қатаң  SQL  мәлімдеме  емес,  сөйлейтін,  оператор 
белгіленген  мерзім,  қолданылады.  Бұл  псевдо-оператормен  триггер 
немесе сақталған процедура жасалмай тұрып, триггер немесе сақталған 
процедураның  соңы  болып  табылатын  символ  пайда  болады.  нүктелі 
үтірмен - сол оператор жиынтығын пайдаланып бағдарлама нысанның 
мәтінін  сипаттайтын  кейін  МЕРЗІМДІ  терминатор  мәні  қалыпты 
нұсқасы қайтарылады. 
Мысалы,  триггер  жасаған  кезде,  сіз  төмендегі  мәлімдемелерді 
орындауыңыз керек:
 
SET TERM 
л
;
 
/* 
Кестенің бастапқы кілті мәнін қалыптастыру ТАУАРЛАР */
 
CREATE TRIGGER TBI_STAFF FOR 
ТОВАРЫ BEFORE 
INSERT . . . [
Тиггер мәтіні}
 
END 
Л
 
Блокта 
операторлар 
дәйекті 
түрде 
орындалады. SQL 
кеңейтімдерінде  дерекқорда  деректерге  қол  жеткізу  операторлары 
(
деректерді іріктеу, деректерді таңдау, өзгерістер, жою). 
Бос  орынға рұқсат  етілген  мәтіндегі  кез келген орын, / * және  * / 
таңбалар арасында орналасқан түсініктемелерді орналастыруға болады. 
Мұндай  түсініктемелердің  біреуі  кез  келген  жолды  қабылдай  алады. 
Түсініктемелердің тағы бір түрі бар: қатарынан екі таңба минус (-). Бұл 
жағдайда түсініктеме мәтіні ағымдағы жолдың соңына дейін жалғасады. 
Бір  жергілікті  айнымалыны  сипаттау  үшін  DECLARE VARIABLE 
операторын пайдаланыңыз. Оның оңайлатылған синтаксисі келесі түрде 
ұсынылуы мүмкін:
 
273
 


жүктеу 2,79 Kb.

Достарыңызбен бөлісу:
1   ...   84   85   86   87   88   89   90   91   ...   101




©g.engime.org 2024
әкімшілігінің қараңыз

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