1. Енгізілетін параметрлі жəне үнсіз келісім бойынша қабылданатын мəндер
процедурасына анықтама беріңіз.
2. Сақталатын процедуралар типтерін атап беріңіз.
3. Ішкі процедуралар қалай қолданылады?
4. Сақталатын процедураларын қолданудың артықшылықтарын атап беріңіз.
Əдебиеттер:[1] 230-238 бет. [2] 78-86 бет. [3]
119-138 қ[1] 41-44 бет.
12- апта
1 кредит сағат.
Тақырыбы:
Курсорлар
Дəріс мазмұны:
1. Курсорлар.
2. Курсор түсінігі.
Реляциялық деректер қорына сұраныс əдетте деректердің бірнеше қатарын (жазба) қайтарады,
бірақ қосымша бір рет өңдеу кезінде бір жазбаны ғана өңдейді. Егер ол бірнеше қатармен бір уақытта
жұмыс атқарса да (мысалға, деректерді электронды кесте түрінде шығарады) олардың саны
бұрынғыдай шектелген. Модификация жою немесе деректерді қосу кезінде жұмыс бірлігі қатар
болып табылады. Бұл жағдайда бірінші болып курсор концепциясы шығады, осындай контексте
курсор – қатарға сілтеуіш болады. SQL-дегі курсор – бұл SQL-дің ақырғы операторын сақтауға
арналған деректер қоры жадындағы аумақ. Егер ағымды оператор – деректер қорына сұраныс
болса, жадыда сұраныстың деректер жолы сақталады, ол ағымды мəн немесе курсордың
ағымды жолы деп аталады. Жадыдағы көрсетілген аумақ аталған жəне қолданбалы
программаға рұқсат етілген.
Əдетте, курсорлар деректер қорынан сақталатын кейбір ішкі жиын ішіндегі ақпаратты сақтауға
қолданылады. Əрбір уақыт сəтінде қолданбалы программамен курсордың бір жолы тексерілуі
мүмкін. Курсорлар SQL операторларында жиі қолданылады, олар - процедуралы типтегі
тілдерде жазылған қондырылған қолданбалы программалар. Олардың кейбіреуі деректер қоры
серверімен айқын құрылмайды, басқалары программистпен аңыкталады. Курсор – нəтижелеуші
жиынтық жəне жолдардың біреуіне көрсетуші. SQL стандартына сəйкес курсорлармен жұмыс
кезінде келесі негізгі əрекеттерді даралауға болады:
• курсорды құру немесе жариялау;
• курсорды ашу, яғни көпдеңгейлі жадыда сақталатын деректермен толтыру;
• курсордан іріктеу жəне деректер жолын оның көмегімен өзгерту;
• курсорды жабу, оған кейін ол қолданушылық программалар үшін рұқсат етілмейді;
• курсорды босату, яғни курсорды объект ретінде жою, себебі оны жабу онымен
əрекеттегі жадыны босатпайды.
Түрлі жүзеге асыру кезінде курсорды анықтауда кейбір ерекшеліктер болады. Мысалға, кейде
жасап шығарушы курсорға бөлінетін жадыны босатуы тиіс. Курсорды босатқан соң онымен сəйкес
жады да босатылады. Оның атын қайтадан пайдалануға мүмкіндік туады. Басқа жүзеге асыру
кезінде курсорды жапқанда жадының босатылуы анық жүрмейді. Қалпына келтірген сəтте басқа
операцияларға рұқсат етіледі: басқа курсорды ашу жəне т.с.с.
Кейбір жағдайларда курсорды қолданбауға болмайды. Бірақ мүмкіндігінше бұдан
алшақтап, деректерді өңдеудің стандартты командаларымен жұмыс істеген дұрыс: SELECT,
UPDATE, INSERT жəне DELETE.
Курсорлар өзгерту операцияларын барлық деректер көлеміне
рұқсат етпейді, курсормен деректерді өңдеу операциясының орындалу жылдамдығы SQL
стандартты құралына қарағанда төмен.
Курсорлар түрлері. Сақтау орны мен жұмыс істеу принципі бойынша SQL Server
курсордың үш түрін қолдайды:
• Transact-SQL курсорлары негізінде триггерлер ішінде, сақталатын процедура жəне
сценарийлерде қолданылады;
• API серверінің курсорлары серверге əрекет етеді жəне ODBC, OLE DB, DB_Library
үшін қосымшаның программалық интерфейсін жүзеге асырады;
• клиент курсорлары клиенттің өзінде жүзеге асырылады.
Бақылау сұрақтары:
1. Курсор дегеніміз не?
2. Оның түрлерін ата.
3. Курсорды басқару қалай жүргізіледі?
4. Курсордың қандай типтері бар?
5. Тізбекті курсордың айналмалы курсордан қандай айырмашылығы бар?
Əдебиеттер:[2] 108-112 бет. [3]
182-190 бет. қ[1] 45 бет.
2 кредит сағат.
Тақырыбы:
Курсорлар
Дəріс мазмұны:
1. Курсорлар түрлері.
2. Курсорды басқару
Түрлі жүзеге асыру кезінде курсорды анықтауда кейбір ерекшеліктер болады. Мысалға, кейде
жасап шығарушы курсорға бөлінетін жадыны босатуы тиіс. Курсорды босатқан соң онымен сəйкес
жады да босатылады. Оның атын қайтадан пайдалануға мүмкіндік туады. Басқа жүзеге асыру
кезінде курсорды жапқанда жадының босатылуы анық жүрмейді. Қалпына келтірген сəтте басқа
операцияларға рұқсат етіледі: басқа курсорды ашу жəне т.с.с.
Кейбір жағдайларда курсорды қолданбауға болмайды. Бірақ мүмкіндігінше бұдан
алшақтап, деректерді өңдеудің стандартты командаларымен жұмыс істеген дұрыс: SELECT,
UPDATE, INSERT жəне DELETE.
Курсорлар өзгерту операцияларын барлық деректер көлеміне
рұқсат етпейді, курсормен деректерді өңдеу операциясының орындалу жылдамдығы SQL
стандартты құралына қарағанда төмен.
Курсорлар түрлері. Сақтау орны мен жұмыс істеу принципі бойынша SQL Server
курсордың үш түрін қолдайды:
• Transact-SQL курсорлары негізінде триггерлер ішінде, сақталатын процедура жəне
сценарийлерде қолданылады;
• API серверінің курсорлары серверге əрекет етеді жəне ODBC, OLE DB, DB_Library
үшін қосымшаның программалық интерфейсін жүзеге асырады;
• клиент курсорлары клиенттің өзінде жүзеге асырылады.
Бақылау сұрақтары:
1. Курсор дегеніміз не?
2. Оның түрлерін ата.
3. Курсорды басқару қалай жүргізіледі?
4. Курсордың қандай типтері бар?
5. Тізбекті курсордың айналмалы курсордан қандай айырмашылығы бар?
Əдебиеттер:[2] 108-112 бет. [3]
182-190 бет. қ[1] 45 бет.
13- апта
1 кредит сағат.
Тақырыбы:
Триггерлер
Дəріс мазмұны:
1. Триггерлер.
2. Триггердің анықтамасы жəне триггерді құру.
Триггерлер сақталатын процедуралардың бір түрі болып саналады. Олардың орындалуы
деректерді манипуляциялау тілінің (DML) қандай да бір операторын кесте үшін орындағанда
жүзеге асады. Триггерлер деректердің тұтастығын тексеру үшін жəне де транзакцияларды
шегіндіруге қолданылады.
Триггер – реляциялық деректер қоры ішінде анықталған жағдай болғанда орындалатын
компиляцияланған SQL-процедура. Триггерлерді қолдану деректер қорын қолданушыларға
қолайлы, бірақ олардың қолдануы енгізу-шығару операцияларына қосымша ресурстар
Достарыңызбен бөлісу: |