Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
42
Добавлен:
16.04.2013
Размер:
30.93 Кб
Скачать

Understanding SQL. Appendix D. рТЙМПЦЕОЙЕ D уйофблуйу й лпнбодб уущмлй ьфп ртймпцеойе упдетцйф впмее лтбфлпе ПРЙУБОЙЕ ТБЪМЙЮОЩИ ЛПНБОД SQL. гЕМШ УПУФПЙФ Ч ФПН, ЮФПВЩ ДБФШ ЧБН ВЩУФТХА Й ФПЮОХА УУЩМЛХ Й ПРТЕДЕМЕОЙЕ SQL. рЕТЧЩК ТБЪДЕМ ЬФПЗП РТЙМПЦЕОЙС ПРТЕДЕМСЕФ ЬМЕНЕОФЩ, ЙУРПМШЪХЕНЩЕ ДМС УПЪДБОЙС ЛПНБОД SQL; ЧФПТПК, РПДТПВОПУФЙ УЙОФБЛУЙУБ Й РТЕДМПЦЕОЙС У ЛТБФЛЙН ПРЙУБОЙЕН УБНЙИ ЛПНБОД. дБМЕЕ РПЛБЪБОЩ УФБОДБТФОЩЕ ХУМПЧОЩЕ ПВПЪОБЮЕОЙС ( ПОЙ ОБЪЩЧБАФУС BNF ХУМПЧЙСНЙ): лМАЮЕЧЩЕ cМПЧБ ОБВЙТБАФУС Ч ЧЕТИОЕН ТЕЗЙУФТЕ.

SQL Й ДТХЗЙЕ УРЕГЙБМШОЩЕ ХУМПЧЙС ЪБЛМАЮБАФУС Ч ХЗМПЧЩЕ УЛПВЛЙ Й ОБВЙТБАФУС ЛХТУЙЧПН.(< and >)

оЕПВСЪБФЕМШОЩЕ ЮБУФЙ ЛПНБОД ОБИПДСФУС Ч ЛЧБДТБФОЩИ УЛПВЛБИ ( [and] ).

нОПЗПФПЮЙЕ ( .... ) ХЛБЪЩЧБЕФ ОБ ФП ЮФП РТЕДЫЕУФЧХАЭБС ЮБУФШ ЛПНБОДЩ НПЦЕФ РПЧФПТСФШУС МАВПЕ ЮЙУМП ТБЪ.

чЕТФЙЛБМШОБ РПМПУБ ( | ) ПЪОБЮБЕФ - ФП, ЮФП ЕК РТЕДЫЕУФЧХЕФ НПЦЕФ ВЩФШ ЪБНЕОЕОП ОБ ФП ЮФП УМЕДХЕФ ЪБ ОЕК.

жЙЗХТОЩЕ уЛПВЛЙ ( {and} ) ХЛБЪЩЧБАФ - ЧУЕ ЮФП ЧОХФТЙ ОЙИ, ДПМЦОП ВЩФШ ТБУГЕОЕОП ЛБЛ ГЕМПЕ, ДМС ПГЕОЛЙ ДТХЗЙИ УЙНЧПМПЧ ( ОБРТЙНЕТ, ЧЕТФЙЛБМШОЩИ РПМПУ ЙМЙ ЬММЙРУПЧ ).

дЧПКОПЕ ДЧПЕФПЮЙЕ Й ТБЧОСЕФУС (:: = ) ПЪОБЮБАФ - ФП ЮФП УМЕДХЕФ ЪБ ОЙНЙ СЧМСЕФУС ПРТЕДЕМЕОЙЕН ФПЗП ЮФП ЙН РТЕДЫЕУФЧХЕФ.

лТПНЕ ФПЗП, НЩ ВХДЕН ЙУРПМШЪПЧБФШ УМЕДХАЭХА РПУМЕДПЧБФЕМШОПУФШ (.,.. ) ЮФПВЩ ХЛБЪЩЧБФШ, ЮФП РТЕДЫЕУФЧХАЭЕЕ ЬФПНХ НПЦЕФ РПЧФПТСФШУС МАВПЕ ЮЙУМП ТБЪ У ЙОДЙЧЙДХБМШОЩНЙ УПВЩФЙСНЙ ПФДЕМСЕНЩНЙ ЪБРСФЩНЙ. бФТЙВХФЩ ЛПФПТЩЕ ОЕ СЧМСАФУС ЮБУФША ПЖЙГЙБМШОПЗП УФБОДБТФБ ВХДХФ ПФНЕЮЕОЩ ЛБЛ (*ОЕУФБОДБТФОЩЕ*) Ч ПРЙУБОЙЙ. пвтбфйфе чойнбойе: фЕТНЙОПМПЗЙС ЛПФПТХА НЩ ЙУРПМШЪХЕН ЪДЕУШ, ОЕ ПЖЙГЙБМШОБ ФЕТНЙОПМПЗЙС ANSI. пЖЙГЙБМШОБС ФЕТНЙОПМПЗЙС НПЦЕФ ЧБУ УЙМШОП ЪБРХФБФШ, РПЬФПНХ НЩ ОЕУЛПМШЛП ЕЕ ХРТПУФЙМЙ.

рП ЬФПК РТЙЮЙОЕ, НЩ ЙОПЗДБ ЙУРПМШЪХЕН ХУМПЧЙС ПФМЙЮБАЭЙЕУС ПФ ANSI, ЙМЙ ЙУРПМШЪХЕН ФЕ ЦЕ УБНЩЕ ХУМПЧЙС ОП ОЕУЛПМШЛП РП-ДТХЗПНХ. оБРТЙНЕТ, ОБЫЕ ПРТЕДЕМЕОЙЕ - < predicate > ПФМЙЮБЕФУС ПФ ЙУРПМШЪХЕНПК Ч ANSI ЛПНВЙОБГЙЙ УФБОДБТФОПЗП ПРТЕДЕМЕОЙС < predicate > У < search condition >. SQL ьменеофщ ьФПФ ТБЪДЕМ ПРТЕДЕМСЕФ ЬМЕНЕОФЩ ЛПНБОД SQL. пОЙ ТБЪДЕМЕОЩ ОБ ДЧЕ ЛБФЕЗПТЙЙ: пУОПЧОЩЕ ЬМЕНЕОФЩ СЪЩЛБ, Й жХОЛГЙПОБМШОЩЕ ЬМЕНЕОФЩ СЪЩЛБ. пУОПЧОЩЕ ЬМЕНЕОФЩ - ЬФП УПЪДБЧБЕНЩЕ ВМПЛЙ СЪЩЛБ; ЛПЗДБ SQL ЙУУМЕДХЕФ ЛПНБОДХ, ФП ПО УОБЮБМБ ПГЕОЙЧБЕФ ЛБЦДЩК УЙНЧПМ Ч ФЕЛУФЕ ЛПНБОДЩ Ч ФЕТ- НЙОБИ ЬФЙИ ЬМЕНЕОФПЧ. тБЪДЕМЙФЕМЙ< separator > ПФДЕМСАФ ПДОХ ЮБУФШ ЛПНБОДЩ ПФ ДТХЗПК; ЧУЕ ЮФП ОБИПДЙФУС НЕЦДХ ТБЪДЕМЙФЕМСНЙ < separator > ПВТБВБФЩЧБЕФУС ЛБЛ НПДХМШ. пУОПЧЩЧБСУШ ОБ ЬФПН ТБЪДЕМЕОЙЙ, SQL Й ЙОФЕТРТЕФЙТХЕФ ЛПНБОДХ. жХОЛГЙПОБМШОЩЕ ЬМЕНЕОФЩ - ЬФП ТБЪОППВТБЪОЩЕ ЧЕЭЙ ПФМЙЮБАЭЙЕУС ПФ ЛМАЮЕЧЩИ УМПЧ, ЛПФПТЩЕ НПЗХФ ЙОФЕТРТЕФЙТПЧБФШУС ЛБЛ НПДХМЙ. ьФП - ЮБУФЙ ЛПНБОДЩ, ПФДЕМСЕНЩЕ У РПНПЭША ТБЪДЕМЙФЕМЕК < separator >, ЙНЕАЭЙИ УРЕГЙБМШОПЕ ЪОБЮЕОЙЕ Ч SQL. оЕЛПФПТЩЕ ЙЪ ОЙИ СЧМСАФУС УРЕГЙБМШОЩНЙ ДМС ПРТЕДЕМЕООЩИ ЛПНБОД Й ВХДХФ ПРЙУБОЩ ЧНЕУФЕ У ЬФЙНЙ ЛПНБОДБНЙ РП- ЪЦЕ, Ч ЬФПН РТЙМПЦЕОЙЙ. рЕТЕЮЙУМЕООПЕ ЪДЕУШ, СЧМСЕФУС ПВЭЙНЙ ЬМЕНЕОФЩ ДМС ЧУЕИ ПРЙУЩЧБЕНЩИ ЛПНБОД. жХОЛГЙПОБМШОЩЕ ЬМЕНЕОФЩ НПЗХФ ПРТЕДЕМСФШУС Ч ФЕТНЙОБИ ДТХЗ ДТХЗБ ЙМЙ ДБЦЕ Ч УПВУФЧЕООЩИ ФЕТНЙОБИ. оБРТЙНЕТ, РТЕДЙЛБФ < predicate >, ОБЫ РПУМЕДОЙК Й ОБЙВПМЕЕ УМПЦОЩК УМХЮБК, УПДЕТЦЙФ РТЕДЙЛБФ ЧОХФТЙ УПВУФЧЕООПЗП ПРТЕДЕМЕОЙС. ьФП РПФПНХ, ЮФП РТЕДЙЛБФ < predicate > ЙУРПМШЪХАЭЙК AND ЙМЙ OR НПЦЕФ УПДЕТЦБФШ МАВПЕ ЮЙУМП РТЕДЙЛБФПЧ < predicate > ЛПФПТЩЕ НПЗХФ ТБВПФБФШ БЧФПОПНОП. нЩ РТЕДУФБЧМСМЙ ЧБН РТЕДЙЛБФ < predicate > Ч ПФДЕМШОПК УЕЛГЙЙ Ч ЬФПН РТЙМПЦЕОЙЙ, ЙЪ-ЪБ ТБЪОППВТБЪЙС Й УМПЦОПУФЙ ЬФПЗП ЖХОЛГЙПОБМШОПЗП ЬМЕНЕОФБ СЪЩЛБ. пО ВХДЕФ РПУФПСООП РТЙУХФУФЧПЧБФШ РТЙ ПВУХЦДЕОЙЙ ДТХЗЙИ ЖХОЛГЙПОБМШОЩИ ЮБУФЕК ЛПНБОД. ьменеофщ същлб векуйлб ьменеоф пртедемеойе < separator > < comment > | < space > | < newline > < comment > --< string > < newline > < space > РТПВЕМ < newline > ТЕБМЙЪБГЙПООП-ПРТЕДЕМСЕНЩК ЛПОЕГ УЙНЧПМШОПК УФТПЛЙ < identifier > < letter >[{< letter or digit > | < underscore}... ] < йнекфе ччйдх: уМЕДХ УФТПЗПНХ УФБОДБТФХ ANSI, УЙНЧПМЩ ДПМЦОЩ ВЩФШ ОБВТБОЩ Ч ЧЕТИОЕН ТЕЗЙУФТБ, Б ЙДЕОФЙЖЙЛБФПТ < identifier > ОЕ ДПМЦЕО ВЩФШ ДМЙООЕЕ 18-ФЙ УЙНЧПМПЧ. ьменеоф пртедемеойе < underscore > - < percent sign > % < delimiter > МАВПЕ ЙЪ УМЕДХАЭЙИ: , ( ) < > . : = + " - | > = < = ЙМЙ < string > < string > [МАВПК РЕЮБФБЕНЩК ФЕЛУФ Ч ПДЙОПЮОЩИ ЛБЧЩЮЛБИ] рТЙНЕЮБОЙЕ: ч < string >, ДЧЕ РПУМЕДПЧБФЕМШОЩИ ПДЙОПЮОЩИ ЛБЧЩЮЛЙ ( ' ' ) ЙОФЕТРТЕФЙТХАФУС ЛБЛ ПДОБ ( ' ). < SQL term > ПЛПОЮБОЙЕ, ЪБЧЙУСЭЕЕ ПФ ЗМБЧОПЗП СЪЩЛБ. (*ФПМШЛП ЧМПЦЕООЩК*) жхолгйпобмшоще ьменеофщ уМЕДХАЭБС ФБВМЙГБ РПЛБЪЩЧБЕФ ЖХОЛГЙПОБМШОЩЕ ЬМЕНЕОФЩ ЛПНБОД SQL Й ЙИ ПРТЕДЕМЕОЙС: ьменеоф пртедемеойе < query > рТЕДМПЦЕОЙЕ SELECT < subquery > ъБЛМАЮЕООПЕ Ч ЛТХЗМЩИ УЛПВЛБИ РТЕДМПЦЕОЙЕ SELECT ЧОХФТЙ ДТХЗПЗП ХУМПЧЙС, ЛПФПТПЕ, ЖБЛФЙЮЕУЛЙ, ПГЕОЙЧБЕФУС ПФДЕМШОП ДМС ЛБЦДПК УФТПЛЙ-ЛБОДЙДБФБ ДТХЗПЗП РТЕДМПЦЕОЙС. < value expression > < primary > | < primary > < operator > < primary > | < primary > < operator > < value expression > < operator > МАВПЕ ЙЪ УМЕДХАЭЙИ: + - / * < primary > < column name > | < literal > | < aggregate function > | < built-in constant > | < nonstandard function > < literal > < string > | < mathematical expressio ьменеоф пртедемеойе < built-in constant > USER | < implementation-dehned constant > < table name > < identifier > < column spec > [< table name > | < alias >.]< column name > < grouping column > < column spec > | < integer > < ordering column > < column spec > | < integer > < colconstraint > NOT NULL | UNIQUE | CHECK (< predicate >) | PRIMARY KEY | REFERENCES < table name >[(< column name >)] < tabconstraint > UNIQUE (< column list >) | CHECK (< predicate >) | PRIMARY KEY (< column list >) | FOREIGN KEY (< column list >) REFERENCES < table name >[(< column list >)] < defvalue > ъобюеойе рп хнпмюбойа = < value expression > < data type > дПРХУФЙНЩК ФЙР ДБООЩИ ( уН. рТЙМПЦЕОЙЕ B ДМС ПРЙУБОЙС ФЙРПЧ ПВЕУРЕЮЙЧБЕНЩИ ANSI ЙМЙ рТЙМПЦЕОЙЕ C ДМС ДТХЗЙИ ПВЭЙИ ФЙРПЧ. ) < size > ъОБЮЕОЙЕ ЪБЧЙУЙФ ПФ < data type >( уН. рТЙМПЦЕОЙЕ B. ) < cursor name > < identifier > < index name > < identifier > < synonym > < identifier >(*nonstandard*) < owner > < Authorization ID > < column list > < column spec > .,.. < value list > < value expression > .,.. < table reference > { < table name > [< alias >] } .,.. ртедйлбфщ уМЕДХАЭЕЕ ПРТЕДЕМСЕФ УРЙУПЛ ТБЪМЙЮОЩИ ФЙРПЧ РТЕДЙЛБФБ < predicate > ПРЙУБООЩИ ОБ УМЕДХАЭЙИ УФТБОЙГБИ: < predicate > ::= [NOT] { < comparison predicate > | < in predicate > | < null predicate > | < between predicate > | < like predicate > | < quantified predicate > | < exists predicate > } [ANDI OR < predicate > ] < predicate > - ЬФП ЧЩТБЦЕОЙЕ, ЛПФПТПЕ НПЦЕФ ВЩФШ ЧЕТОЩН, ОЕЧЕТОЩН, ЙМЙ ОЕЙЪЧЕУФОЩН, ЪБ ЙУЛМАЮЕОЙЕН < exists predicate > Й < null predicate >, ЛПФПТЩЕ НПЗХФ ВЩФШ ФПМШЛП ЧЕТОЩНЙ ЙМЙ ОЕЧЕТОЩНЙ. вХДЕФ РПМХЮЕОП ОЕЙЪЧЕУФОП ЕУМЙ NULL ЪОБЮЕОЙС РТЕДПФЧТБЭБАФ ЧЩЧПД РПМХЮЕООПЗП ПФЧЕФБ. ьФП ВХДЕФ УМХЮБФШУС ЧУСЛЙК ТБЪ, ЛПЗДБ NULL ЪОБЮЕОЙЕ УТБЧОЙЧБЕФУС У МАВЩН ЪОБЮЕОЙЕН. уФБОДБТФОЩЕ ПРЕТБФПТЩ вХМС - AND, OR, Й NOT - НПЗХФ ЙУРПМШЪПЧБФШУС У РТЕДЙЛБФПН. NOT ЧЕТОП = ОЕЧЕТОП, NOT ОЕЧЕТОП = ЧЕТОП, Б NOT ОЕЙЪЧЕУФОП = ОЕЙЪЧЕУФОП. тЕЪХМШФБФЩ AND Й OR Ч ЛПНВЙОБГЙЙ У РТЕДЙЛБФБНЙ, РПЛБЪБОЩ Ч УМЕДХАЭЙИ ФБВМЙГБИ: AND AND чЕТОП оЕЧЕТОП оЕЙЪЧЕУФОП чЕТОП ЧЕТОП ОЕЧЕТОП ОЕЙЪЧЕУФОП оЕЧЕТОП ОЕЧЕТОП ОЕЧЕТОП ОЕЧЕТОП оЕЙЪЧЕУФОП ОЕЙЪЧЕУФОП ОЕЧЕТОП ОЕЙЪЧЕУФОП OR OR чЕТОП оЕЧЕТОП оЕЙЪЧЕУФОП чЕТОП ЧЕТОП ЧЕТОП ЧЕТОП оЕЧЕТОП ЧЕТОП ОЕЧЕТОП ОЕЙЪЧЕУФОП оЕЙЪЧЕУФОП ЧЕТОП ОЕЙЪЧЕУФОП ОЕЙЪЧЕУФОП ьФЙ ФБВМЙГЩ ЮЙФБАФУС УРПУПВПН ОБРПДПВЙЕ ФБВМЙГЩ ХНОПЦЕОЙС: ЧЩ ПВЯЕДЙОСЕФЕ ЧЕТОЩЕ, ОЕЧЕТОЩЕ, ЙМЙ ОЕЙЪЧЕУФОЩЕ ЪОБЮЕОЙС ЙЪ УФТПЛ У ЙИ УФПМВГБНЙ ЮФПВЩ ОБ РЕТЕЛТЕУФШЕ РПМХЮЙФШ ТЕЪХМШФБФ. ч ФБВМЙГЕ AND, ОБРТЙНЕТ, ФТЕФЙК УФПМВЕГ (оЕЙЪЧЕУФОП) Й РЕТЧБС УФТПЛБ (чЕТОП) ОБ РЕТЕУЕЮЕОЙЙ Ч ЧЕТИОЕН РТБЧПН ХЗМХ ДБАФ ТЕЪХМШФБФ - ОЕЙЪЧЕУФОП, ДТХЗЙНЙ УМПЧБНЙ: чЕТОП AND оЕЙЪЧЕУФОП = ОЕЙЪЧЕУФОП. рПТСДПЛ ЧЩЮЙУМЕОЙК ПРТЕДЕМСЕФУС ЛТХЗМЩНЙ УЛПВЛБНЙ. пОЙ ОЕ РТЕДУФБЧМСАФУС ЛБЦДЩК ТБЪ. NOT ПГЕОЙЧБЕФУС РЕТЧЩН, ДБМЕЕ AND Й OR. тБЪМЙЮОЩЕ ФЙРЩ РТЕДЙЛБФПЧ < predicate > ТБУУНБФТЙЧБАФУС ПФДЕМШОП Ч УМЕДХАЭЕН ТБЪДЕМЕ. < comparison predicate > (РТЕДЙЛБФ УТБЧОЕОЙС) уЙОФБЛУЙУ < value expresslon > < relational op > < value expresslon > |

< subquery >

< relatlonal op > :: =

=

| <

| >

| <

| >=

| < >

еУМЙ МЙВП < value expression > = NULL, МЙВП < comparison predicate > = ОЕЙЪЧЕУФОП; ДТХЗЙНЙ УМПЧБНЙ, ЬФП ЧЕТОП ЕУМЙ УТБЧОЕОЙЕ ЧЕТОП ЙМЙ ОЕЧЕТОП ЕУМЙ УТБЧОЕОЙЕ ОЕЧЕТОП.

< relational op > ЙНЕЕФ УФБОДБТФОЩЕ НБФЕНБФЙЮЕУЛЙЕ ЪОБЮЕОЙС ДМС ЮЙУМПЧЩИ ЪОБЮЕОЙК; ДМС ДТХЗЙИ ФЙРПЧ ЪОБЮЕОЙК, ЬФЙ ЪОБЮЕОЙС ПРТЕДЕМСАФУС ЛПОЛТЕФОПК ТЕБМЙЪБГЙЕК.

пВБ < value expression > ДПМЦОЩ ЙНЕФШ УТБЧОЙНЩЕ ФЙРЩ ДБООЩИ. еУМЙ РПДЪБРТПУ < subquery > ЙУРПМШЪХЕФУС, ПО ДПМЦЕО УПДЕТЦБФШ ПДОП ЧЩТБЦЕОЙЕ < value expression > Ч РТЕДМПЦЕОЙЙ SELECT, ЮШЕ ЪОБЮЕОЙЕ ВХДЕФ ЪБНЕОСФШ ЧФПТПЕ ЧЩТБЦЕОЙЕ < value expression > Ч РТЕДЙЛБФЕ УТБЧОЕОЙС < comparision predicate >, ЛБЦДЩК ТБЪ ЛПЗДБ < subquery > ДЕКУФЧЙФЕМШОП ЧЩРПМОСЕФУС. < between predicate > уЙОФБЛУЙУ < value expression > [NOT] BETWEEN < value expression >

AND < value expression >

< between predicate > - A BETWEEN B AND C , ЙНЕЕФ ФБЛПЕ ЦЕ ЪОБЮЕОЙЕ ЮФП Й < predicate > - ( A >= B AND < = C). < between predicate > ДМС ЛПФПТПЗП A NOT BETWEEN B AND C, ЙНЕЕФ ФБЛПЕ ЦЕ ЪОБЮЕОЙЕ ЮФП Й NOT ( BETWEEN B AND C). < value expression > НПЦЕФ ВЩФШ ЧЩЧЕДЕОП У РПНПЭША ОЕУФБОДБТФОПЗП ЪБРТПУБ < subquery > ( *nonstandard* ). < in prediicate > уЙОФБЛУЙУ < value expression > [NOT] IN < value list > | < subquery >

уРЙУПЛ ЪОБЮЕОЙК < value list > ВХДЕФ УПУФПСФШ ЙЪ ПДОПЗП ЙМЙ ВПМЕЕ РЕТЕЮЙУМЕООЩИ ЪОБЮЕОЙК Ч ЛТХЗМЩИ УЛПВЛБИ Й ПФДЕМСЕНЩИ ЪБРСФЩНЙ, ЛПФПТЩЕ ЙНЕАФ УТБЧОЙНЩК У < value expression > ФЙР ДБООЩИ. еУМЙ ЙУРПМШЪХЕФУС РПДЪБРТПУ < subquery >, ПО ДПМЦЕО УПДЕТЦБФШ ФПМШЛП ПДОП ЧЩТБЦЕОЙЕ < value expression > Ч РТЕДМПЦЕОЙЙ SELECT ( ЧПЪНПЦОП Й ВПМШЫЕ, ОП ЬФП ХЦЕ ВХДЕФ ЧОЕ УФБОДБТФБ ANSI ). рПДЪБРТПУ < subquery > ЖБЛФЙЮЕУЛЙ, ЧЩРПМОСЕФУС ПФДЕМШОП ДМС ЛБЦДПК УФТПЛЙ-ЛБОДЙДБФБ ПУОПЧОПЗП ЪБРТПУБ, Й ЪОБЮЕОЙС ЛПФПТЩЕ ПО ЧЩЧЕДЕФ, ВХДХФ УПУФБЧМСФШ УРЙУПЛ ЪОБЮЕОЙК < value list > ДМС ЬФПК УФТПЛЙ. ч МАВПН УМХЮБЕ, РТЕДЙЛБФ < in predicate > ВХДЕФ ЧЕТЕО ЕУМЙ ЧЩТБЦЕОЙЕ < value expression > РТЕДУФБЧМЕООПЕ Ч УРЙУЛЕ ЪОБЮЕОЙК < value list >, ЕУМЙ ОЕ ХЛБЪБО NOT. жТБЪБ A NOT IN (B, C) СЧМСЕФУС ЬЛЧЙЧБМЕОФПН ЖТБЪЩ NOT (A IN (B, C)). < like predicate > уЙОФБЛУЙУ < charvalue > [NOT] LIKE < pattern > [ESCAPE

< escapechar >] < charvalue > - ЬФП МАВПЕ *ОЕУФБОДБТФОПЕ* ЧЩТБЦЕОЙЕ < value expression > БМЖБЧЙФОП-ГЙЖТПЧПЗП ФЙРБ. < charvalue > НПЦЕФ ВЩФШ, Ч УППФЧЕФУФЧЙЙ УП УФБОДБТФПН, ФПМШЛП ПРТЕДЕМЕООЩН УФПМВГПН < column spec >. пВТБЪЕГ < pattern > УПУФПЙФ ЙЪ УФТПЛЙ ЛПФПТБС ВХДЕФ РТПЧЕТЕОБ ОБ УПЧРБДЕОЙЕ У < charvalue >. уЙНЧПМ ПЛПОЮБОЙС < escapechar > - ЬФП ПДЙОПЮОЩК БМЖБЧЙФОП-ГЙЖТПЧПК УЙНЧПМ. уПЧРБДЕОЙЕ РТПЙЪПКДЕФ, ЕУМЙ ЧЕТОЩ УМЕДХАЭЙЕ ХУМПЧЙС : дМС ЛБЦДПЗП УЙНЧПМБ РПДЮЕТЛЙЧБОЙС < underscore > Ч ПВТБЪГЕ < pattern > ЛПФПТБС ОЕ РТЕДЫЕУФЧХЕФ УЙНЧПМХ ПЛПОЮБОЙС < escapechar >, ЙНЕЕФУС ПДЙО УППФЧЕФУФЧХАЭЙК ЕНХ УЙНЧПМ < charvalue >.

дМС ЛБЦДПЗП < percent sign > Ч ПВТБЪГЕ < pattern >, ЛПФПТЩК ОЕ РТЕДЫЕУФЧХЕФ < escapechar >, ЙНЕАФУС ОХМЙ ЙМЙ ВПМЕЕ УППФЧЕФУФЧХАЭЙЕ УЙНЧПМЩ Ч < charvalue >.

дМС ЛБЦДПЗП < escapechar > Ч < pattern > ЛПФПТЩК ОЕ РТЕДЫЕУФЧХЕФ ДТХЗПНХ < escapechar >, ОЕФ ОЙЛБЛПЗП УППФЧЕФУФЧХАЭЕЗП УЙНЧПМБ Ч < charvalue >.

дМС ЛБЦДПЗП ЙОПЗП УЙНЧПМБ Ч < pattern >, ПДЙО Й ФПФ ЦЕ УЙНЧПМ ХУФБОБЧМЙЧБЕФУС Х УППФЧЕФУФЧХАЭЕК ПФНЕФЛЕ Ч < charvalue >.

еУМЙ УПЧРБДЕОЙЕ РТПЙЪПЫМП, < like predicate > - ЧЕТЕО, ЕУМЙ ОЕ ВЩМ ХЛБЪБО NOT. жТБЪБ NOT LIKE 'ФЕЛУФ' - ЬЛЧЙЧБМЕОФОБ NOT ( A LIKE 'ФЕЛУФ'). < null predicate > уЙОФБЛУЙУ < column spec > IS [NOT] NULL < column spec > = IS NULL, ЕУМЙ NULL ЪОБЮЕОЙЕ РТЕДУФБЧМЕОП Ч ЬФПН УФПМВГЕ. ьФП УДЕМБЕФ < null predicate > ЧЕТОЩН ЕУМЙ ОЕ ХЛБЪБО NULL. жТБЪБ < column spec > IS NOT NULL, ЙНЕЕФ ФПФ ЦЕ ТЕЪХМШФБФ ЮФП Й NOT ( < column spec > IS NULL ). < quantified predicate > уЙОФБЛУЙУ < value expression > < relational op >

< quantifier > < subquery >

< quantifier > :: = ANY | ALL | SOME рТЕДМПЦЕОЙЕ SELECT РПДЪБРТПУБ < subquery > ДПМЦОП УПДЕТЦБФШ ПДОП Й ФПМШЛП ПДОП ЧЩТБЦЕОЙЕ ЪОБЮЕОЙС < value expression >. чУЕ ЪОБЮЕОЙС ЧЩЧЕДЕООЩЕ РПДЪБРТПУПН < subquery > УПУФБЧМСАФ ОБВПТ ТЕЪХМШФБФПЧ < result set >. < value expression > УТБЧОЙЧБЕФУС, ЙУРПМШЪХС ПРЕТБФПТ УЧСЪЙ < relational operator >, У ЛБЦДЩН ЮМЕОПН ОБВПТБ ТЕЪХМШФБФПЧ < result set >. ьФП УТБЧОЕОЙЕ ПГЕОЙЧБЕФУС УМЕДХАЭЙН ПВТБЪПН: еУМЙ < quantifier > = ALL, Й ЛБЦДЩК ЮМЕО ОБВПТБ ТЕЪХМШФБФПЧ < result set > ДЕМБЕФ ЬФП УТБЧОЕОЙЕ ЧЕТОЩН, < quantified predicate > - ЧЕТЕО.

еУМЙ < quantifier > = ANY, Й ЙНЕЕФУС РП ЛТБКОЕК НЕТЕ ПДЙО ЮМЕО ЙЪ ОБВПТБ ТЕЪХМШФБФПЧ < result set > , ЛПФПТЩК ДЕМБЕФ ЧЕТОЩН ЬФП УТБЧОЕОЙЕ, ФП < quantified predicate > СЧМСЕФУС ЧЕТОЩН.

еУМЙ ОБВПТ ТЕЪХМШФБФПЧ < result set > РХУФ, ФП < quantified predicate > ЧЕТЕО, ЕУМЙ < quantifier > = ALL , Й ОЕЧЕТЕО ЕУМЙ ЙОБЮЕ.

еУМЙ < quantifier > = SOME, ЬЖЖЕЛФ - ФПФ ЦЕ ЮФП Й ДМС ANY.

еУМЙ < quantified predicate > ОЕ ЧЕТЕО Й ОЕ ОЕЧЕТЕО, ПО - ОЕЙЪЧЕУФЕО. < exists predicate > уЙОФБЛУЙУ: EXISTS (< subquery >) еУМЙ РПДЪБРТПУ < subquery > ЧЩЧПДЙФ ПДОХ ЙМЙ ВПМЕЕ УФТПЛ ЧЩЧПДБ, < exists predicate > - ЧЕТЕО; Й ОЕЧЕТЕО ЕУМЙ ЙОБЮЕ. SQL лпнбодщ ьФПФ ТБЪДЕМ РПДТПВОП ПРЙУЩЧБЕФ УЙОФБЛУЙУ ТБЪМЙЮОЩИ ЛПНБОД SQL. ьФП ДБУФ ЧБН ЧПЪНПЦОПУФШ ВЩУФТП ПФЩУЛЙЧБФШ ЛПНБОДХ, ОБИПДЙФШ ЕЕ УЙОФБЛУЙУ Й ЛТБФЛПЕ ПРЙУБОЙЕ ЕЕ ТБВПФЩ.

йнекфе ччйдх лПНБОДЩ ЛПФПТЩЕ ОБЮЙОБАФУС УМПЧБНЙ - EXEC SQL, Б ФБЛЦЕ ЛПНБОДЩ ЙМЙ РТЕДМПЦЕОЙС ЪБЛБОЮЙЧБАЭЙЕУС УМПЧПН - НПЗХФ ЙУРПМШЪПЧБФШУС ФПМШЛП ЧП ЧМПЦЕООПН SQL. BEGIN DECLARE SECTION (обюбмп тбъдемб пвясчмеойк) уЙОФБЛУЙУ EXEC SQL BEGIN DECLARE SECTION < SQL term > < host-language variable declarations > EXEC SQL END DECLARE SECTION < SQL term > ьФБ ЛПНБОДБ УПЪДБЕФ ТБЪДЕМ РТПЗТБННЩ ЗМБЧОПЗП СЪЩЛБ ДМС ПВЯСЧМЕОЙС Ч ОЕК ЗМБЧОЩИ РЕТЕНЕООЩИ, ЛПФПТЩЕ ВХДХФ ЙУРПМШЪПЧБФШУС ЧП ЧЛМБДЩЧБЕНЩИ ПРЕТБФПТБИ SQL. рЕТЕНЕООБ SQLCODE ДПМЦОБ ВЩФШ ЧЛМАЮЕОБ ЛБЛ ПДОБ ЙЪ ПВЯСЧМСЕНЩИ РЕТЕНЕООЩИ ЗМБЧОПЗП СЪЩЛБ. CLOSE CURSOR (ъблтщфш лхтупт) уЙОФБЛУЙУ EXEC SQL CLOSE CURSOR < cursor name > < SQL term >; ьФБ ЛПНБОДБ ХЛБЪЩЧБЕФ ЛХТУПТХ ЪБЛТЩФШУС, РПУМЕ ЮЕЗП ОЙ ПДОП ЪОБЮЕОЙЕ ОЕ УНПЦЕФ ВЩФШ ЧЩВТБОП ЙЪ ОЕЗП ДП ФЕИ РПТ РПЛБ ПО ОЕ ВХДЕФ УОПЧБ ПФЛТЩФ. COMMIT (WORK) (жйлубгйс (фтбоъблгйй)) уЙОФБЛУЙУ COMMIT WORK; ьФБ ЛПНБОДБ ПУФБЧМСЕФ ОЕЙЪНЕООЩНЙ ЧУЕ ЙЪНЕОЕОЙС УДЕМБООЩИ Ч ВБЪЕ ДБООЩИ, ДП ФЕИ РПТ РПЛБ ОБЮБЧЫБСУС ФТБОЪБЛГЙС ОЕ ЪБЛПОЮЙФУС, Й ОЕ ОБЮОЕФУС ОПЧБС ФТБОЪБЛГЙС. CREATE INDEX (упъдбфш йоделу) (*NONSTANDARD*) (оеуфбодбтфоп) уЙОФБЛУЙУ CREATE [UNIQUE] INDEX < Index name >

ON < table name > (< column list >);

ьФБ ЛПНБОДБ УПЪДБЕФ ЬЖЖЕЛФЙЧОЩК НБТЫТХФ У ВЩУФТЩН ДПУФХРПН ДМС РПЙУЛБ УФТПЛ УПДЕТЦБЭЙИ ПВПЪОБЮЕООЩЕ УФПМВГЩ. еУМЙ UNIQUE - ХЛБЪБОБ, ФБВМЙГБ ОЕ УНПЦЕФ УПДЕТЦБФШ ДХВМЙЛБФПЧ(ДЧПКОЙЛПЧ) ЪОБЮЕОЙК Ч ЬФЙИ УФПМВГБИ. CREATE SYNONYM (*NONSTANDARD*)

(упъдбфш уйопойн) ( *оеуфбодбтфоп* ) уЙОФБЛУЙУ CREATE IPUBLICl SYNONYM < synonym > FOR

< owner >.< table name >; ьФБ ЛПНБОДБ УПЪДБЕФ БМШФЕТОБФЙЧОПЕ(УЙОПОЙН) ЙН ДМС ФБВМЙГЩ. уЙОПОЙН РТЙОБДМЕЦЙФ ЕЗП УПЪДБФЕМА, Б УБНБ ФБВМЙГБ, ПВЩЮОП ДТХЗПНХ РПМШЪПЧБФЕМА. йУРПМШЪХС УЙОПОЙН, ЕЗП ЧМБДЕМЕГ НПЦЕФ ОЕ УУЩМБФШУС Л ФБВМЙГЕ ЕЕ РПМОЩН ( ЧЛМАЮБС ЙН ЧМБДЕМШГБ ) ЙНЕОЕН. еУМЙ PUBLIC - ХЛБЪБО, УЙОПОЙН РТЙОБДМЕЦЙФ ЛБФБМПЗХ SYSTEM Й УМЕДПЧБФЕМШОП ДПУФХРЕО ЧУЕН РПМШЪПЧБФЕМСН. CREATE TABLE (упъдбфш фбвмйгх) уЙОФБЛУЙУ CREATE TABLE < table name >

({< column name > < data type >[< size >]

[< colconstralnt > . . .]

[< defvalue >]} . , . . < tabconstraint > . , . .); лПНБОДБ УПЪДБЕФ ФБВМЙГХ Ч ВБЪЕ ДБООЩИ. ьФБ ФБВМЙГБ ВХДЕФ РТЙОБДМЕЦБФШ ЕЕ УПЪДБФЕМА. уФПМВГЩ ВХДХФ ТБУУНБФТЙЧБФШУС Ч РПЙНЕООПН РПТСДЛЕ. < data type > - ПРТЕДЕМСЕФ ФЙР ДБООЩИ ЛПФПТЩК ВХДЕФ УПДЕТЦБФШ УФПМВЕГ. уФБОДБТФ < data type > ПРЙУЩЧБЕФУС Ч рТЙМПЦЕОЙЙ B; ЧУЕ РТПЮЙЕ ЙУРПМШЪХЕНЩЕ ФЙРЩ ДБООЩИ < data type >, ПВУХЦДБМЙУШ Ч рТЙМПЦЕОЙЙ C. ъОБЮЕОЙЕ ТБЪНЕТБ < size > ЪБЧЙУЙФ ПФ ФЙРБ ДБООЩИ < data type >.

< colconstraint > Й < tabconstraint > ОБМБЗБАФ ПЗТБОЙЮЕОЙС ОБ ЪОБЮЕОЙС ЛП ФПТЩЕ НПЗХФ ВЩФШ ЧЧЕДЕОЩ Ч УФПМВГХ.

< defvalue > ПРТЕДЕМСЕФ ЪОБЮЕОЙЕ(РП ХНПМЮБОЙА) ЛПФПТПЕ ВХДЕФ ЧУФБЧМЕОП БЧФПНБФЙЮЕУЛЙ, ЕУМЙ ОЙЛБЛПЗП ДТХЗПЗП ЪОБЮЕОЙС ОЕ ХЛБЪБОП ДМС ЬФПК УФТПЛЙ. ( уН. зМБЧХ 17 ДМС РПДТПВОПУФЕК П УБНПК ЛПНБОДЕ CREATE TABLE ЙзМБЧЩ 18 й 19 ДМС РПДТПВОПУФЕК ПВ ПЗТБОЙЮЕОЙСИ Й П < defvalue > ). CREATE VIEW (упъдбфш ртпунпфт) уЙОФБЛУЙУ CREATE VIEW < table name >

AS < query >

[WITH CHECK OPTION]; рТПУНПФТ ПВТБВБФЩЧБЕФУС ЛБЛ МАВБ ФБВМЙГБ Ч ЛПНБОДБИ SQL. лПЗДБ ЛПНБОДБ УУЩМБЕФУС ОБ ЙНС ФБВМЙГЩ < table name >, ЪБРТПУ < query > ЧЩРПМОСЕФУС, Й ЕЗП ЧЩЧПД УППФЧЕФУФЧХЕФ УПДЕТЦБОЙА ФБВМЙГЩ ХЛБЪБООПК Ч ЬФПК ЛПНБОДЕ.

оЕЛПФПТЩЕ РТПУНПФТЩ НПЗХФ НПДЙЖЙГЙТПЧБФШУС, ЮФП ПЪОБЮБЕФ, ЮФП ЛПНБОДЩ НПДЙЖЙЛБГЙЙ НПЗХФ ЧЩРПМОСФШУС Ч ЬФЙИ РТПУНПФТБИ Й РЕТЕДБЧБФШУС Ч ФБВМЙГХ, ОБ ЛПФПТХА ВЩМБ УУЩМЛБ Ч ЪБРТПУЕ < query >. еУМЙ ХЛБЪБОП РТЕДМПЦЕОЙЕ WITH CHECK OPTION, ЬФБ НПДЙЖЙЛБГЙС ДПМЦОЩ ФБЛЦЕ ХДПЧМЕФЧПТСФШ ХУМПЧЙА РТЕДЙЛБФБ < predicate > Ч ЪБРТПУЕ < query >. DECLARE CURSOR (пвясчйфш лхтупт) уЙОФБЛУЙУ EXEC SQL DECLARE < cursor name > CURSOR FOR

< query >< SQL term > ьФБ ЛПНБОДБ УЧСЪЩЧБЕФ ЙН ЛХТУПТБ < cursor name >, У ЪБРТПУПН < query >. лПЗДБ ЛХТУПТ ПФЛТЩФ ( УН. OPEN CURSOR ), ЪБРТПУ < query > ЧЩРПМОСЕФ УС, Й ЕЗП ТЕЪХМШФБФ НПЦЕФ ВЩФШ ЧЩВТБО(ЛПНБОДПК FETCH) ДМС ЧЩЧПДБ. еУМЙ ЛХТУПТ НПДЙЖЙГЙТХЕНЩК, ФБВМЙГБ ОБ ЛПФПТХА УУЩМБЕФУС ЪБРТПУ < query >, НПЦЕФ РПМХЮЙФШ ЙЪНЕОЕОЙЕ УПДЕТЦБОЙС У РПНПЭША ПРЕТБГЙЙ НПДЙЖЙЛБГЙЙ Ч ЛХТУПТЕ ( уН. зМБЧХ 25 П НПДЙЖЙГЙТХЕНЩИ ЛХТУПТБИ ). DELETE (хдбмйфш) уЙОФБЛУЙУ DELETE FROM < table name >

{ [WHERE < predicate >]; }

| WHERE CURRENT OF < cursorname >< SQL term > еУМЙ РТЕДМПЦЕОЙЕ WHERE ПФУХФУФЧХЕФ, чуе УФТПЛЙ ФБВМЙГЩ ХДБМСАФУС. еУМЙ РТЕДМПЦЕОЙЕ WHERE ЙУРПМШЪХЕФ РТЕДЙЛБФ < predicate >, УФТПЛЙ, ЛП ФПТЩЕ ХДПЧМЕФЧПТСАФ ХУМПЧЙА ЬФПЗП РТЕДЙЛБФБ < predicate > ХДБМСАФУС. еУМЙ РТЕДМПЦЕОЙЕ WHERE ЙНЕЕФ БТЗХНЕОФ CURRENT OF(фелхэйк) Ч ЙНЕОЙ ЛХТУПТБ < cursor name >, УФТПЛБ ЙЪ ФБВМЙГЩ < table name > ОБ ЛП ФПТХА Ч ДБООЩК НПНЕОФ ЙНЕЕФУС УУЩМЛБ У РПНПЭША ЙНЕОЙ ЛХТУПТБ < cursor name > ВХДЕФ ХДБМЕОБ. жПТНБ WHERE CURRENT НПЦЕФ ЙУРПМШЪПЧБФШУС ФПМШЛП ЧП ЧМПЦЕООПН SQL, Й ФПМШЛП У НПДЙЖЙГЙТХЕНЩНЙ ЛХТУПТБНЙ. EXEC SQL (чщрпмойфш SQL) уЙОФБЛУЙУ EXEC SQL < embedded SQL command > < SQL term > EXEC SQL ЙУРПМШЪХЕФУС ЮФПВЩ ХЛБЪЩЧБФШ ОБЮБМП ЧУЕИ ЛПНБОД SQL, ЧМПЦЕООЩИ Ч ДТХЗПК СЪЩЛ. FETCH (чщвптлб) уЙОФБЛУЙУ EXEC SQL FETCH < cursorname >

INTO < host-varlable llst >< SQL term > FETCH РТЙОЙНБЕФ ЧЩЧПД ЙЪ ФЕЛХЭЕК УФТПЛЙ ЪБРТПУБ < query >, ЧУФБЧМСЕФ ЕЕ Ч УРЙУПЛ ЗМБЧОЩИ РЕТЕНЕООЩИ < host-variable list >, Й РЕТЕНЕЭБЕФ ЛХТ УПТ ОБ УМЕДХАЭХА УФТПЛХ. уРЙУПЛ < host-variable list > НПЦЕФ ЧЛМАЮБФШ РЕТЕНЕООХА indicator Ч ЛБЮЕУФЧЕ ГЕМЕЧПК РЕТЕНЕООПК ( уН. зМБЧХ 25. ) GRANT (ретедбфш ртбчб) уЙОФБЛУЙУ (УФБОДБТФОЩК) GRANT ALL [PRIVILEGES]

| {SELECT

| INSERT

| DELETE

| UPDATE [(< column llst >)]

| REFERENCES [(< column llst >)l } . , . .

ON < table name > . , . .

TO PUBLIC | < Authorization ID > . , . .

[WITH GRANT OPTION]; бТЗХНЕОФ ALL(чуе), У ЙМЙ ВЕЪ PRIVILEGES(ртйчймезйй), ЧЛМАЮБЕФ ЛБЦДХА РТЙЧЙМЕЗЙА Ч УРЙУПЛ РТЙЧЙМЕЗЙК. PUBLIC(пвэйк) ЧЛМАЮБЕФ ЧУЕИ УХЭЕУФЧХАЭЙИ РПМШЪПЧБФЕМЕК Й ЧУЕИ УПЪДБООЩИ Ч ВХДХЭЕН. ьФБ ЛПНБОДБ ДБЕФ ЧПЪНПЦОПУФШ РЕТЕДБФШ РТБЧБ ДМС ЧЩРПМОЕОЙС ДЕКУФЧЙК Ч ФБВМЙГЕ У ХЛБЪБООЩН ЙНЕОЕН. REFERENCES РПЪЧПМСЕФ ДБФШ РТБЧБ ЮФПВЩ ЙУРПМШЪПЧБФШ УФПМВГЩ Ч УРЙУЛЕ УФПМВГПЧ < column list > ЛБЛ ТПДЙФЕМШУЛЙК ЛМАЮ ДМС ЧОЕЫОЕЗП ЛМАЮБ. дТХЗЙЕ РТЙЧЙМЕЗЙЙ УПУФПСФ ЙЪ РТБЧБ ЧЩРПМОСФШ ЛПНБОДЩ ДМС ЛПФПТЩИ РТЙЧЙМЕЗЙЙ ХЛБЪБОЩ ЙИ ЙНЕОБНЙ Ч ФБВМЙГЕ. UPDATE, РПДПВЕО REFERENCES, Й НПЦЕФ ОБЛМБДЩЧБФШ ПЗТБОЙЮЕОЙС ОБ ПРТЕДЕМЕООЩЕ УФПМВГЩ. GRANT OPTION ДБЕФ ЧПЪНПЦОПУФШ РЕТЕДБЧБФШ ЬФЙ РТЙЧЙМЕЗЙЙ ДТХЗЙН РПМШЪПЧБФЕМСН. уЙОФБЛУЙУ ( ОЕУФБОДБТФОЩК ) GRANT DBA

| RESOURCE

| CONNECT ... .

TO < Authorization ID > . , . .

[IDENTIFIED BY > password > CONNECT ДБЕФ ЧПЪНПЦОПУФШ РЕТЕДБЧБФШ РТБЧП ОБ ТЕЗЙУФТБГЙЙ Й ОЕЛПФПТЩЕ ДТХЗЙЕ ПЗТБОЙЮЕООЩЕ РТБЧБ. RESOURCE ДБЕФ РПМШЪПЧБФЕМА РТБЧП УПЪДБЧБФШ ФБВМЙГЩ. DBA ДБЕФ ЧПЪ- НПЦОПУФШ РЕТЕДБЧБФШ РПЮФЙ ЧУЕ РТБЧБ. IDENTIFIED BY ЙУРПМШЪХЕФУС ЧНЕУФЕ У CONNECT, ДМС УПЪДБОЙС ЙМЙ ЙЪНЕОЕОЙС РБТПМС РПМШЪПЧБФЕМС. INSERT (чуфбчлб) уЙОФБЛУЙУ INSERT INTO < table name > (< column llst >)

VALUES (< value llst >) I < query >; INSERT УПЪДБЕФ ПДОХ ЙМЙ ВПМШЫЕ ОПЧЩИ УФТПЛ Ч ФБВМЙГЕ У ЙНЕОЕН < table name >. еУМЙ ЙУРПМШЪХЕФУС РТЕДМПЦЕОЙЕ VALUES , ЙИ ЪОБЮЕОЙС ЧУФБЧМСАФУС Ч ФБВМЙГХ У ЙНЕОЕН < table name >. еУМЙ ЪБРТПУ < query > ХЛБЪБО, ЛБЦДБС УФТПЛБ ЧЩЧПДБ ВХДЕФ ЧУФБЧМЕОБ Ч ФБВМЙГХ У ЙНЕОЕН < table name >. еУМЙ УРЙУПЛ УФПМВГПЧ < column list > ПФУХФУФЧХЕФ, ЧУЕ УФПМВГЩ ФБВМЙГЩ < table name >, РТЙОЙНБАФУС Ч ХРПТСДПЮЕООПН ЧЙДЕ. OPEN CURSOR (пфлтщфш лхтупт) уЙОФБЛУЙУ EXEC SQL OPEN CURSOR < cursorname >< SQL term > OPEN CURSOR ЧЩРПМОСЕФ ЪБРТПУ УЧСЪБООЩК У ЛХТУПТПН < cursor name >. чЩЧПД НПЦЕФ ФЕРЕТШ ЙЪЧМЕЛБФШ РП ПДОПК УФТПЛЕ ДМС ЛБЦДПК ЛПНБОДЩ FETCH. REVOKE (*NONSTANDARD*)

(пфнеойфш рпмопнпюйс) (оеуфбодбтфоп) уЙОФБЛУЙУ REVOKE { ALL [PRIVILEGES]

| < privilege > . , . . } [ON < table name >]

FROM { PUBLIC

| < Authorization ID > . , . . }; рТЙЧЙМЕЗЙС < privelege > НПЦЕФ ВЩФШ МАВПК ЙЪ ХЛБЪБООЩИ Ч ЛПНБОДЕ GRANT. рПМШЪПЧБФЕМШ ДБАЭЙК REVOKE ДПМЦЕО ЙНЕФШ ФЕ ЦЕ РТЙЧЙМЕЗЙЙ, ЮФП Й РПМШЪПЧБФЕМШ ЛПФПТЩК ДБЧБМ GRANT. рТЕДМПЦЕОЙЕ ON НПЦЕФ ВЩФШ ЙУРПМШЪПЧБОП, ЕУМЙ ЙУРПМШЪХЕФУС РТЙЧЙМЕЗЙС УРЕГЙБМШОПЗП ФЙРБ ДМС ПУПВПЗП ПВЯЕЛФБ. ROLLBACK (WORK)

(пфлбф) (фтбоъблгйй) уЙОФБЛУЙУ ROLLBACK WORK; лПНБОДБ ПФНЕОСЕФ ЧУЕ ЙЪНЕОЕОЙС Ч ВБЪЕ ДБООЩИ, УДЕМБООЩЕ Ч ФЕЮЕОЙЕ ФЕ- ЛХЭЕК ФТБОЪБЛГЙЙ. пОБ ЛТПНЕ ФПЗП ЪБЛБОЮЙЧБЕФУС ФЕЛХЭХА, Й ОБЮЙОБЕФ ОПЧХА ФТБОЪБЛГЙА. SELECT (чщвпт) уЙОФБЛУЙУ SELECT { IDISTINCT | ALL] < value expression > . , . . } / *

[INTO < host variable list > (*embedded only*)]

FROM < table reference > . , . .

[WHERE < predicate >]

[GROUP BY < grouping column > . , . .]

[HAVING < predicate >]

[ORDER BY < ordering column > [ASC | DESC] . , . . ]; ьФП РТЕДМПЦЕОЙЕ ПТЗБОЙЪХЕФ ЪБРТПУ Й ЧЩЧПДЙФ ЪОБЮЕОЙС ЙЪ ВБЪЩ ДБООЩИ (УН. зМБЧБ 3 - зМБЧБ 14 ). рТЙНЕОСАФУС УМЕДХАЭЙЕ РТБЧЙМБ: еУМЙ ОЙ ALL, ОЙ DISTINCT - ОЕ ХЛБЪБОЩ, РТЙОЙНБЕФУС - ALL.

чЩТБЦЕОЙЕ < value expression > УПУФПЙФ ЙЪ < column spec >, БЗТЕЗБФОПК ЖХОЛГЙЙ < aggregate funct >, ОЕУФБОДБТФОПК ЖХОЛГЙЙ < nonstandard fu nction >, РПУФПСООПК < constant >, ЙМЙ МАВПК ЙИ ЛПНВЙОБГЙЙ У ПРЕТБФПТБНЙ Ч ДПРХУФЙНЩИ ЧЩТБЦЕОЙСИ.

уУЩМБЕНБС ФБВМЙГБ < table reference >, УПУФПЙФ ЙЪ ЙНЕОЙ ФБВМЙГЩ, ЧЛМАЮБС РТЕЖЙЛУ ЧМБДЕМШГБ ЕУМЙ ФЕЛХЭЙК РПМШЪПЧБФЕМШ ОЕ ЧМБДЕМЕГ, ЙМЙ УЙОПОЙН(ОЕУФБОДБТФОП) ДМС ФБВМЙГЩ. фБВМЙГБ НПЦЕФ ВЩФШ ЙМЙ ВБЪПЧПК ФБВМЙГЕК ЙМЙ РТПУНПФТПН. ч РТЙОГЙРЕ, РУЕЧДПОЙН НПЦЕФ ХЛБЪБФШ, ЛБЛ- ПК УЙОПОЙНПН ЙУРПМШЪХЕФУС ДМС ФБВМЙГЩ ФПМШЛП ОБ ЧТЕН ФЕЛХЭЕК ЛП- НБОДЩ. йНС ФБВМЙГЩ ЙМЙ УЙОПОЙН ДПМЦОЩ ПФДЕМСФШУС ПФ РУЕЧДПОЙНБ ПДОЙН ЙМЙ ВПМЕЕ ТБЪДЕМЙФЕМШОЩНЙ ЪОБЛБНЙ < separator >.

еУМЙ ЙУРПМШЪХЕФУС GROUP BY, ЧУЕ УФПМВГЩ < column spec > ЙУРПМШЪХЕНЩЕ Ч РТЕДМПЦЕОЙЙ SELECT, ДПМЦОЩ ВХДХФ ЙУРПМШЪПЧБФШУС ЛБЛ ЗТХРРБ УФПМВГПЧ < grouping column >, ЕУМЙ ПОЙ ОЕ УПДЕТЦБФУС Ч БЗТЕЗБФОПК ЖХОЛГЙЙ < aggregate funct >. чУС ЗТХРРБ УФПМВГПЧ < grouping column > ДПМЦОБ ВЩФШ РТЕДУФБЧМЕОБ УТЕДЙ ЧЩТБЦЕОЙК < value expressions > ХЛБЪБООЩИ Ч РТЕДМПЦЕОЙЙ SELECT. дМС ЛБЦДПК ПФДЕМШОПК ЛПНВЙОБГЙЙ ЪОБЮЕОЙК ЗТХРРЩ УФПМВГПЧ < grouping column >, ВХДЕФ ЙНЕФШУС ПДОБ Й ФПМШЛП ПДОБ УФТПЛБ ЧЩЧПДБ.

еУМЙ HAVING ЙУРПМШЪХЕФУС, РТЕДЙЛБФ < predicate > РТЙНЕОСЕФУС Л ЛБЦДПК УФТПЛЕ РТПЙЪЧЕДЕООПК РТЕДМПЦЕОЙЕН GROUP BY, Й ФЕ УФТПЛЙ ЛПФПТЩЕ УДЕМБАФ ЬФПФ РТЕДЙЛБФ ЧЕТОЩН, ВХДХФ ЧЩЧЕДЕОЩ.

еУМЙ ORDER BY ЙУРПМШЪХЕФУС, ЧЩЧПД ЙНЕЕФ ПРТЕДЕМЕООХА РПУМЕДПЧБФЕМШОПУФШ. лБЦДЩК ЙДЕОФЙЖЙЛБФПТ УФПМВГБ < column identifer > УУЩМБЕФУС Л ХЛБЪБООПНХ < value expression > Ч РТЕДМПЦЕОЙЙ SELECT. еУМЙ ЬФП < value expression > СЧМСЕФУС ХЛБЪБООЩН УФПМВГПН < column spec >, < co lumn identifier > НПЦЕФ ВЩФШ ФБЛЙН ЦЕ ЛБЛ < column spec >. йОБЮЕ < co lumn identifier > НПЦЕФ ВЩФШ РПМПЦЙФЕМШОЩН ГЕМЩН ЮЙУМПН, ХЛБЪЩЧБА ЭЙН НЕУФП ЗДЕ ОБИПДЙФУС < value expression > Ч РПУМЕДПЧБФЕМШОПУФЙ РТЕДМПЦЕОЙС SELECT. чЩЧПД ВХДЕФ УЖПТНЙТПЧБО ФБЛ ЮФПВЩ РПНЕЭБФШ ЪОБЮЕОЙС УПДЕТЦБЭЙЕУС Ч < column identifier > Ч РПТСДЛЕ ЧПЪТБУФБОЙС, ЕУМЙ DESC ОЕ ХЛБЪБО. йНС ЙДЕОФЙЖЙЛБФПТБ УФПМВГБ < column identifier > УФПСЭЕЕ РЕТЧЩН Ч РТЕДМПЦЕОЙЙ ORDER BY ВХДЕФ РТЕДЫЕУФЧПЧБФШ РПЪЦЕ УФПСЭЙН ЙНЕОБН Ч ПРТЕДЕМЕОЙЙ РПУМЕДПЧБФЕМШОПУФЙ ЧЩЧПДБ. рТЕДМПЦЕОЙЕ SELECT ПГЕОЙЧБЕФ ЛБЦДХА УФТПЛХ-ЛБОДЙДБФ ФБВМЙГЩ Ч ЛПФПТПК УФТПЛЙ РПЛБЪБОЩ ОЕЪБЧЙУЙНП. уФТПЛБ-ЛБОДЙДБФ ПРТЕДЕМСЕФУС УМЕДХАЭЙН ПВТБЪПН: еУМЙ ФПМШЛП ПДОБ УУЩМБЕНБС ФБВМЙГБ < table reference > ЧЛМАЮЕОБ, ЛБЦДБС УФТПЛБ ЬФПК ФБВМЙГБ Ч УЧПА ПЮЕТЕДШ СЧМСЕФУС УФТПЛПК-ЛБОДЙДБФПН.

еУМЙ ВПМЕЕ ПДОПК УУЩМБЕНПК ФБВМЙГЩ < table reference > ЧЛМАЮЕОП, ЛБЦДБС УФТПЛБ ЛБЦДПК ФБВМЙГЩ ДПМЦОБ ВЩФШ УЛПНВЙОЙТПЧБОБ Ч УЧПА ПЮЕТЕДШ У ЛБЦДПК ЛПНВЙОБГЙЕК УФТПЛ ЙЪ ЧУЕИ ДТХЗЙИ ФБВМЙГ. лБЦДБС ФБЛБС ЛПНВЙОБГЙС ВХДЕФ Ч УЧПА ПЮЕТЕДШ УФТПЛПК-ЛБОДЙДБФПН. лБЦДБС УФТПЛБ-ЛБОДЙДБФ РТПЙЪЧПДЙФ ЪОБЮЕОЙС, ЛПФПТЩЕ ДЕМБАФ РТЕДЙЛБФ < predicate > Ч РТЕДМПЦЕОЙЙ WHERE ЧЕТОЩН, ОЕЧЕТОЩН, ЙМЙ ОЕЙЪЧЕУФОЩН. еУМЙ GROUP BY ОЕ ЙУРПМШЪХЕФУС, ЛБЦДПЕ < value expression > РТЙНЕОСЕФУС Ч УЧПА ПЮЕТЕДШ ДМС ЛБЦДПК УФТПЛЙ-ЛБОДЙДБФБ ЮШЕ ЪОБЮЕОЙЕ ДЕМБЕФ РТЕДЙЛБФ ЧЕТОЩН, Й ТЕЪХМШФБФПН ЬФПК ПРЕТБГЙЙ СЧМСЕФУС ЧЩЧПД.

еУМЙ GROUP BY ЙУРПМШЪХЕФУС, УФТПЛЙ-ЛБОДЙДБФЩ ЛПНВЙОЙТХАФУС, ЙУРПМШЪХС БЗТЕЗБФОЩЕ ЖХОЛГЙЙ. еУМЙ ОЙЛБЛПЗП РТЕДЙЛБФБ < predicate > ОЕ ХУФБОПЧМЕОП, ЛБЦДПЕ ЧЩТБЦЕОЙЕ< value expression > РТЙНЕОСЕФУС Л ЛБЦДПК УФТПЛЕ-ЛБОДЙДБФХ ЙМЙ Л ЛБЦДПК ЗТХРРЕ. еУМЙ ХЛБЪБО DISTINCT, ДХВМЙЛБФЩ( ДЧПКОЙЛЙ) УФТПЛ ВХДХФ ХДБМЕОЩ ЙЪ ЧЩЧПДБ. UNION (пвяедйоеойе) уЙОФБЛУЙУ < query > {UNION [ALL] < query > } . . . ; чЩЧПД ДЧХИ ЙМЙ ВПМЕЕ ЪБРТПУПЧ < query > ВХДЕФ ПВЯЕДЙОЕО. лБЦДЩК ЪБРТПУ < query > ДПМЦЕО УПДЕТЦБФШ ПДЙО Й ФПФ ЦЕ ОПНЕТ < value expression > Ч РТЕДМПЦЕОЙЕ SELECT Й Ч ФБЛПН РПТСДЛЕ ЮФП 1.. n ЛБЦДПЗП, УПЧНЕУФЙН РП ФЙРХ ДБООЩИ < data type > Й ТБЪНЕТХ < size > У 1.. n ЧУЕИ ДТХЗЙИ. UPDATE (нпдйжйлбгйс) уЙОФБЛУЙУ UPDATE < table name >

SET { < column name > = < value expression > } . , . .

{[ WHERE < predlcate >]; }

| {[WHERE CURRENT OF < cursorname >]

< SQL term >]} UPDATE ЙЪНЕОСЕФ ЪОБЮЕОЙС Ч ЛБЦДПН УФПМВГЕ У ЙНЕОЕН < column name > ОБ УППФЧЕФУФЧХАЭЕЕ ЪОБЮЕОЙЕ < value expression >. еУМЙ РТЕДМПЦЕОЙЕ WHERE ЙУРПМШЪХЕФ РТЕДЙЛБФ < predicate >, ФП ФПМШЛП УФТПЛЙ ФБВМЙГ ЮШЙ ФЕЛХЭЙЕ ЪОБЮЕОЙС ДЕМБАФ ФПФ РТЕДЙЛБФ < predicate > ЧЕТОЩН, НПЗХФ ВЩФШ ЙЪНЕОЕОЩ. еУМЙ WHERE ЙУРПМШЪХЕФ РТЕДМПЦЕОЙЕ CURRENT OF, ФП ЪОБЮЕОЙС Ч УФТПЛЕ ФБВМЙГЩ У ЙНЕОЕН < table name > ОБИПДСЭЙЕУС Ч ЛХТУПТЕ У ЙНЕОЕН < cursor name > НЕОСАФУС. WHERE CURRENT OF РТЙЗПДОП ДМС ЙУРПМШЪПЧБОЙС ФПМШЛП ЧП ЧМПЦЕООПН SQL, Й ФПМШЛП У НПДЙЖЙГЙТХЕНЩНЙ ЛХТУПТБНЙ. рТЙ ПФУХФУФЧЙЙ РТЕДМПЦЕОЙС WHERE - ЧУЕ УФТПЛЙ НЕОСАФУС. WHENEVER (чуслйк тбъ лбл) уЙОФБЛУЙУ EXEC SQL WHENEVER < SQLcond > < actlon > < SQL term >

< SQLcond > :: = SQLERROR | NOT FOUND | SQLWARNING

(РПУМЕДОЕЕ - ОЕУФБОДБТФОПЕ)

< action > :: = CONTINUE | GOTO < target > | GOTO < target >

< target > :: = ЪБЧЙУЙФ ПФ ЗМБЧОПЗП СЪЩЛБ

Соседние файлы в папке Understanding SQL (rus - html)