Сакталган процедура менен функциянын ортосундагы айырма

Мазмуну:

Сакталган процедура менен функциянын ортосундагы айырма
Сакталган процедура менен функциянын ортосундагы айырма

Video: Сакталган процедура менен функциянын ортосундагы айырма

Video: Сакталган процедура менен функциянын ортосундагы айырма
Video: Gastrointestinal Dysmotility in Autonomic Disorders 2024, Декабрь
Anonim

Сакталган процедура жана функция

Сакталган процедуралар жана функциялар программалоо блокторунун эки түрү. Экөөнүн тең аттары болушу керек. Ошол чакыруучу аттар аларды процедуралар функциялары жана пакеттери же SQL сурамдары сыяктуу башка программалоо блогунун ичинде чакыруу үчүн колдонулат. Бул объекттердин эки түрү тең параметрлерди кабыл алат жана ошол объекттердин артында тапшырманы аткарат. Бул сакталган процедураны түзүү үчүн синтаксис (ORACLEде), процедуранын атын түзүү же алмаштыруу (параметрлер)

as

баштоо

билдирүүлөр;

өзгөчө

өзгөчө_башкаруу

аягы;

Бул жерде функция түзүү синтаксиси (ORACLEде), функцияны түзүү же алмаштыруу function_name (параметрлер)

кайтаруу_берүү_түрү

as

баштоо

билдирүүлөр;

кайтаруу_маани/өзгөрмө;

өзгөчө;

өзгөчө_башкаруу;

аягы;

Сакталган процедуралар

Жогоруда айтылгандай сакталган процедуралар программалоо блоктору деп аталат. Алар колдонуучунун киргизүүсү катары параметрлерди кабыл алышат жана процедуранын артында турган логикага ылайык процессти жүргүзүшөт жана натыйжаны беришет (же белгилүү бир аракетти аткарышат). Бул параметрлер IN, OUT жана INOUT түрлөрү болушу мүмкүн. Өзгөрмө декларациялары, өзгөрмө дайындоолору, башкаруу операторлору, циклдер, SQL сурамдары жана башка функциялар/процедуралар/пакет чалуулары процедуралардын негизги бөлүгүндө болушу мүмкүн.

Функциялар

Функциялар ошондой эле программалоо блоктору деп аталат, алар RETURN операторунун жардамы менен маанини кайтарышы керек жана ал маани кайтарганга чейин анын денеси да кээ бир аракеттерди аткарат (берилген логикага ылайык). Функциялар да иштетүү үчүн параметрлерди кабыл алат. Функцияларды суроонун ичинде чакырса болот. Функция SELECT суроосунун ичинде чакырылганда, ал SELECT суроосунун натыйжалар топтомунун ар бир сабына колдонулат. ORACLE функцияларынын бир нече категориялары бар. Алар,

Бир катар функциялар (суроонун ар бир сабы үчүн бир натыйжаны кайтарат)

Бир катар функциялардын суб категориялары бар.

  • Сандык функция (Мис: ABS, SIN, COS)
  • Символ функциясы (Мис: CONCAT, INITCAP)
  • Күн убакыт функциясы (Мисалы: АКЫРКЫ_КҮН, КЕЛЕСКИ_КҮН)
  • Которуу функциялары (Мис: TO_CHAR, TO_DATE)
  • Жыйноо функциясы (Мисалы: CARDINALITY, SET)
  • Топтоо функциялары (Сатарлар тобунун негизинде бир сапты кайтарат. Мисалы: AVG, SUM, MAX)
  • Аналитикалык функциялар
  • Объектке шилтеме функциялары
  • Модель функциялары
  • Колдонуучу аныктаган функциялар

Функция менен Сакталган процедуранын ортосунда кандай айырма бар?

• Бардык функциялар RETURN операторунун жардамы менен маанини кайтарышы керек. Сакталган процедуралар RETURN операторунун жардамы менен маанилерди кайтарбайт. Процедуранын ичиндеги RETURN оператору анын башкаруусун чакырып жаткан программага кайтарат. OUT параметрлери сакталган процедуралардан маанилерди кайтаруу үчүн колдонулушу мүмкүн.

• Функцияларды сурамдардын ичинде чакырса болот, бирок сакталган процедураларды сурамдардын ичинде колдонууга болбойт.

• Функцияны түзүү үчүн RETURN берилиштер түрү киргизилиши керек, бирок сакталган DDL процедурасында андай эмес.

Сунушталууда: