УДФ вс похрањена процедура у СКЛ-у
СКЛ окружење долази са различитим компонентама које раде с њим за успешно извршење задатака. Постоји функција дефинисана од стране корисника и похрањена процедура, који су заједнички у СКЛ окружењу. Разлике између ове две приказане су у наставку.
Разлике
Прва разлика која се види код функције дефиниране од стране корисника је та што је програмирана на начин да мора вратити вриједност. Сачувана процедура има одређену могућност да ли да вратите вриједност или не. Ово зависи од тога да ли сачувана процедура има вредност коју треба вратити.
Друга разлика виђена између корисничке функције и похрањене процедуре односи се на изјаве. Кориснички дефинирана функција омогућава само читање одабраних изјава док ДМЛ изрази нису допуштени. Са друге стране, похрањена процедура омогућава употребу како изабраних изјава, тако и ДМЛ изјава које се такође могу ажурирати и манипулирати.
Кориснички дефинирана функција допуштаће само унос параметара, али не подржава излаз истих параметара. Насупрот томе, похрањена процедура подржава и улазне и излазне параметре. УДФ такође не дозвољава употребу блокова покушаја хватања. Похрањени поступак омогућава употребу блокова покушај хватања за руковање изузетком.
УДФ такође не дозвољава да се трансакције дешавају у оквиру функција. Ова функција је доступна у похрањеној процедури која омогућава руковање трансакцијама. УДФ такође не дозвољава употребу променљивих табела и такође не дозвољава привремене табеле. Похрањени поступак, међутим, омогућава употребу варијабли табеле као и привремене табеле у њој.
Кад је у функцији, УДФ не допушта позивање спремљених таблица с ње. То је сасвим другачије када је у питању похрањена процедура, што омогућава позивање функције без икаквих ограничења. Када је са функцијама, УДФ не допушта позивање наведених функција из наредбе за одабир. Складиштени поступак такође држи да се процедуре не могу позивати од Вхере / Селецт и власништво изјава. Екец или Екецуте се, међутим, може користити за позивање или чак извршење похрањене процедуре. Посљедње, али не најмање битно је да се УДФ може користити за креирање клаузуле придруживања, искориштавајући скуп резултата. У похрањеној процедури то није могуће јер нису дозвољене никакве процедуре у клаузули о придруживању. Такођер је важно имати на уму да похрањена процедура омогућава повратак на нулу или чак н вриједности, док се УДФ може вратити само на једну одређену и унапријед постављену вриједност.
Резиме
Функција је обавезна да врати вредност док није за похрањену процедуру.
Одаберите изјаве прихваћене само у УДФ-у, док ДМЛ-изјаве нису потребне.
Складиштени поступак прихвата било које изјаве, као и ДМЛ изјаве.
УДФ допушта само улазе, а не излазе.
Похрањена процедура омогућава и улазе и излазе.
Блокови за улов не могу се користити у УДФ, али се могу користити у похрањеној процедури.
Није допуштена ниједна трансакција у функцијама УДФ-а, али у похрањеној процедури.
Само варијабле табеле могу се користити у УДФ-у, а не привремене таблице.
Похрањена процедура омогућава и варијабле таблице и привремене таблице.
УДФ не допушта позивање похрањених процедура из функција док похрањене процедуре омогућавају позивање функција.
УДФ се користи у клаузули придруживања, док се похрањене процедуре не могу користити у клаузули придруживања.
Похрањени поступак увек ће омогућити повратак на нулу. Напротив, УДФ има вредности које се морају вратити на унапред одређену тачку.