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

Understanding SQL. Chapter 17. упъдбойе фбвмйг чрмпфш дп ьфпзп неуфб, нщ ъбртбыйчбмй фбвмйгщ ДБООЩИ Й ЧЩРПМОСМЙ ЛПНБОДЩ РП ЙЪЧМЕЮЕОЙА ЬФЙИ ДБООЩИ, УЮЙФБС, ЮФП ЬФЙ ФБВМЙГЩ ХЦЕ ВЩМЙ УПЪДБОЩ ЛЕН - ФП ДП ОБУ . ьФП ДЕКУФЧЙФЕМШОП ОБЙВПМЕЕ ТЕБМШОБС УЙФХБГЙС, ЛПЗДБ ОЕВПМШЫПЕ ЛПМЙЮЕУФЧП МАДЕК УПЪДБАФ ФБВМЙГЩ, ЛПФПТЩЕ ЪБФЕН ЙУРПМШЪХАФУС ДТХЗЙНЙ МАДШНЙ. оБЫБ ГЕМШ УПУФПЙФ Ч ФПН, ЮФПВЩ ПИЧБФЙЧ ЙОЖПТНБГЙА УОБЮБМБ ВПМЕЕ ЫЙТПЛП, РЕТЕКФЙ ЪБФЕН Л ВПМЕЕ ХЪЛЙН ЧПРТПУБН. ч ЬФПК ЗМБЧЕ, НЩ ВХДЕН ПВУХЦДБФШ УПЪДБОЙЕ, ЙЪНЕОЕОЙЕ, Й ХДБМЕОЙЕ ФБВМЙГ. чУЕ ЬФП ПФОПУЙФУС Л УБНЙН ФБВМЙГБН, Б ОЕ Л ДБООЩН ЛПФПТЩЕ Ч ОЙИ УПДЕТЦБФУС. вХДЕФЕ ЙМЙ ОЕ ВХДЕФЕ чЩ ЧЩРПМОСФШ ЬФЙ ПРЕТБГЙЙ УБНПУФПСФЕМШОП, ОП ЙИ ЛПОГЕРФХБМШОПЕ РПОЙНБОЙЕ ХЧЕМЙЮЙФ ЧБЫЕ РПОЙНБОЙЕ СЪЩЛБ SQL Й РТЙТПДХ ФБВМЙГ ЛПФПТЩЕ ЧЩ ЙУРПМШЪХЕФЕ. ьФБ ЗМБЧБ ЧЧПДЙФ ОБУ Ч ПВМБУФШ SQL ОБЪЩЧБЕНХА - DDL(сЪЩЛ пРТЕДЕМЕОЙС дБООЩИ), ЗДЕ УПЪДБАФУС ПВЯЕЛФЩ ДБООЩИ SQL. ьФБ ЗМБЧБ ФБЛЦЕ РПЛБЦЕФ ДТХЗПК ЧЙД ПВЯЕЛФБ ДБООЩИ SQL - йОДЕЛУ. йОДЕЛУЩ ЙУРПМШЪХАФУС ЮФПВЩ ДЕМБФШ РПЙУЛ ВПМЕЕ ЬЖЖЕЛФЙЧОЩН Й, ЙОПЗДБ, ЪБУФБЧМСФШ ЪОБЮЕОЙС ПФМЙЮБФШУС ДТХЗБ ПФ ДТХЗБ. пОЙ ПВЩЮОП ТБВПФБАФ ОЕЪБНЕФОП ДМС чБУ, ОП ЕУМЙ ЧЩ РПРТПВХЕФЕ РПНЕУФЙФШ ЪОБЮЕОЙС Ч ФБВМЙГХ Й ПОЙ ВХДХФ ПФЛМПОЕОЩ, ЙЪ-ЪБ ЙИ ОЕХОЙЛБМШОПУФЙ, ЬФП ВХДЕФ ПЪОБЮБФШ ЮФП ДТХЗБ УФТПЛБ ЙНЕЕФ ФП ЦЕ УБНПЕ ЪОБЮЕОЙЕ ДМС ЬФПЗП РП- М, Й ЮФП ЬФП РПМЕ ЙНЕЕФ ХОЙЛБМШОЩК ЙОДЕЛУ ЙМЙ ПЗТБОЙЮЕОЙЕ ЛПФПТПЕ РТЕДРЙУЩЧБЕФ ЕНХ ХОЙЛБМШОПУФШ. пВУХЦДЕОЙЕ ЧЩЫЕХРПНСОХФПЗП, РТПДПМЦЙФУС Ч зМБЧЕ 18. лпнбодб упъдбойс фбвмйгщ фБВМЙГЩ УПЪДБАФУС ЛПНБОДПК CREATE TABLE. ьФБ ЛПНБОДБ УПЪДБЕФ РХУФХА ФБВМЙГХ - ФБВМЙГХ ВЕЪ УФТПЛ. ъОБЮЕОЙС ЧЧПДСФУС У РПНПЭША DML ЛПНБОДЩ INSERT ( уН. зМБЧХ 15). лПНБОДБ CREATE TABLE Ч ПУОПЧОПН ПРТЕДЕМСЕФ ЙН ФБВМЙГЩ, Ч ЧЙДЕ ПРЙУБОЙС ОБВПТБ ЙНЕО УФПМВГПЧ ХЛБЪБООЩИ Ч ПРТЕДЕМЕООПН РПТСДЛЕ. пОБ ФБЛЦЕ ПРТЕДЕМСЕФ ФЙРЩ ДБООЩИ Й ТБЪНЕТЩ УФПМВГПЧ. лБЦДБС ФБВМЙГБ ДПМЦОБ ЙНЕФШ РП ЛТБКОЕК НЕТЕ ПДЙО УФПМВЕГ. уЙОФБЛУЙУ ЛПНБОДЩ CREATE TABLE: CREATE TABLE ( [()], [()] ... ); лБЛ УЛБЪБОП Ч зМБЧЕ 2, ФЙРЩ ДБООЩИ ЪОБЮЙФЕМШОП НЕОСАФУС ПФ РТПЗТБННЩ Л РТПЗТБННЕ. дМС УПЧНЕУФЙНПУФЙ УП УФБОДБТФПН, ПОЙ ДПМЦОЩ ЧУЕ, РП ЛТБК- ОЕК НЕТЕ, РПДДЕТЦЙЧБФШ УФБОДБТФ ФЙРБ ANSI. пО ПРЙУБО Ч рТЙМПЦЕОЙЙ B. фБЛ ЛБЛ РТПВЕМЩ ЙУРПМШЪХАФУС ДМС ТБЪДЕМЕОЙС ЮБУФЕК ЛПНБОДЩ SQL, ПОЙ ОЕ НПЗХФ ВЩФШ ЮБУФША ЙНЕОЙ ФБВМЙГЩ ( ЙМЙ МАВПЗП ДТХЗПЗП ПВЯЕЛФБ, ФБЛПЗП ЛБЛ ЙОДЕЛУ ). рПДЮЕТЛЙЧБОЙЕ ( _ ) - ПВЩЮОП ЙУРПМШЪХЕФУС ДМС ТБЪДЕМЕОЙС УМПЧ Ч ЙНЕОБИ ФБВМЙГ. ъОБЮЕОЙЕ БТЗХНЕОФБ ТБЪНЕТБ ЪБЧЙУЙФ ПФ ФЙРБ ДБООЩИ. еУМЙ ЧЩ ЕЗП ОЕ ХЛБЪЩЧБЕФЕ, ЧБЫБ УЙУФЕНБ УБНБ ВХДЕФ ОБЪОБЮБФШ ЪОБЮЕОЙЕ БЧФПНБФЙЮЕУЛЙ. дМС ЮЙУМПЧЩИ ЪОБЮЕОЙК, ЬФП - МХЮЫЙК ЧЩИПД, РПФПНХ ЮФП Ч ЬФПН УМХЮБЕ, ЧУЕ ЧБЫЙ РПМ ФБЛПЗП ФЙРБ РПМХЮБФ ПДЙО Й ФПФ ЦЕ ТБЪНЕТ ЮФП ПУЧПВПЦДБЕФ ЧБУ ПФ РТПВМЕН ЙИ ПВЭЕК УПЧНЕУФЙНПУФЙ(УН. зМБЧХ 14). лТПНЕ ФПЗП, ЙУРПМШЪПЧБОЙЕ БТЗХНЕОФБ ТБЪНЕТБ У ОЕЛПФПТЩНЙ ЮЙУМПЧЩН ОБ- ВПТБНЙ, ОЕ УПЧУЕН РТПУФПК ЧПРТПУ. еУМЙ ЧБН ОХЦОП ИТБОЙФШ ВПМШЫЙЕ ЮЙУМБ, ЧБН ОЕУПНОЕООП РПОБДПВСФУС ЗБТБОФЙЙ, ЮФП РПМ ДПУФБФПЮОП ЧЕМЙЛЙ ЮФПВЩ ЧНЕУФЙФШ ЙИ. пДЙО ФЙР ДБООЩИ ДМС ЛПФПТПЗП ЧЩ, Ч ПУОПЧОПН, ДПМЦОЩ ОБЪОБЮБФШ ТБЪНЕТ - CHAR. бТЗХНЕОФ ТБЪНЕТБ - ЬФП ГЕМПЕ ЮЙУМП ЛПФПТПЕ ПРТЕДЕМСЕФ НБЛУЙНБМШОПЕ ЮЙУМП УЙНЧПМПЧ ЛПФПТПЕ НПЦЕФ ЧНЕУФЙФШ РПМЕ. жБЛФЙЮЕУЛЙ, ЮЙУМП УЙНЧПМПЧ РП- М НПЦЕФ ВЩФШ ПФ ОХМС ( ЕУМЙ РПМЕ - NULL ) ДП ЬФПЗП ЮЙУМБ. рП ХНПМЮБОЙА, БТЗХНЕОФ ТБЪНЕТБ = 1, ЮФП ПЪОБЮБЕФ ЮФП РПМЕ НПЦЕФ УПДЕТЦБФШ ФПМШЛП ПДОХ ВХЛЧХ. ьФП ЛПОЕЮОП ОЕ УПЧУЕН ФП ЮФП ЧЩ ИПФЙФЕ. фБВМЙГЩ РТЙОБДМЕЦБФ РПМШЪПЧБФЕМА ЛПФПТЩК ЙИ УПЪДБМ, Й ЙНЕОБ ЧУЕИ ФБВМЙГ РТЙОБДМЕЦБЭЙИ ДБООПНХ РПМШЪПЧБФЕМА ДПМЦОЩ ПФМЙЮБФШУС ДТХЗБ ПФ ДТХЗБ, ЛБЛ Й ЙНЕОБ ЧУЕИ УФПМВГПЧ ЧОХФТЙ ДБООПК ФБВМЙГЩ. пФДЕМШОЩЕ ФБВМЙГЩ НПЗХФ ЙУРПМШЪПЧБФШ ПДЙОБЛПЧЩЕ ЙНЕОБ УФПМВГПЧ, ДБЦЕ ЕУМЙ ПОЙ РТЙОБДМЕЦБФ ПДОПНХ Й ФПНХ ЦЕ РПМШЪПЧБФЕМА. рТЙНЕТПН ЬФПНХ - УФПМВЕГ city Ч ФБВМЙГЕ ъБЛБЪЮЙЛПЧ Й Ч ФБВМЙГЕ рТПДБЧГПЧ. рПМШЪПЧБФЕМЙ ОЕ СЧМСАЭЙЕУС ЧМБДЕМШГБНЙ ФБВМЙГ НПЗХФ УУЩМБФШУС Л ЬФЙН ФБВМЙГБН У РПНПЭША ЙНЕОЙ ЧМБДЕМШГБ ЬФЙИ ФБВМЙГ УПРТПЧПЦДБЕНПЗП ФПЮЛПК; ОБРТЙНЕТ, ФБВМЙГБ Employees УПЪДБОБ Smith ВХДЕФ ОБЪЩЧБФШУС Smith.Employees ЛПЗДБ ПОБ ХРПНЙОБЕФУС ЛБЛЙН-ФП ДТХЗЙН РПМШЪПЧБФЕМЕН ( НЩ РПОЙНБЕН ЮФП Smith - ЬФП йДЕОФЙЖЙЛБФПТ тБЪТЕЫЕОЙС (ID). (ID) УППВЭБЕНЩК РПМШЪПЧБФЕМЕН ( ЧБЫ ТБЪТЕЫЕООЩК ID - ЬФП ЧБЫЕ ЙН Ч SQL. ьФПФ ЧЩЧПД ПВУХЦДБМУС Ч зМБЧЕ 2, Й ВХДЕФ РТПДПМЦЕО Ч зМБЧЕ 22 ). ьФБ ЛПНБОДБ ВХДЕФ УПЪДБЧБФШ ФБВМЙГХ рТПДБЧГПЧ: CREATE TABLE Saleepeople ( snum integer, sname char (10), city char (10), comm declmal ); рПТСДПЛ УФПМВГПЧ Ч ФБВМЙГЕ ПРТЕДЕМСЕФУС РПТСДЛПН Ч ЛПФПТПН ПОЙ ХЛБЪБОЩ. йН УФПМВГБ ОЕ ДПМЦОП ТБЪДЕМСФШУС РТЙ РЕТЕОПУЕ УФТПЛЙ ( ЮФП УДЕМБОП ДМС ХДПВПЮЙФБЕНПУФЙ ), ОП ПФДЕМСЕФУС ЪБРСФЩНЙ. йоделущ йОДЕЛУ - ЬФП ХРПТСДПЮЕООЩК ( ВХЛЧЕООЩК ЙМЙ ЮЙУМПЧПК ) УРЙУПЛ УФПМВГПЧ ЙМЙ ЗТХРР УФПМВГПЧ Ч ФБВМЙГЕ. фБВМЙГЩ НПЗХФ ЙНЕФШ ВПМШЫПЕ ЛПМЙЮЕУФЧП УФТПЛ, Б, ФБЛ ЛБЛ УФТПЛЙ ОЕ ОБИПДСФУС Ч ЛБЛПН-ОЙВХДШ ПРТЕДЕМЕООПН РПТСДЛЕ, ЙИ РПЙУЛ РП ХЛБЪБООПНХ ЪОБЮЕОЙА НПЦЕФ РПФТЕВПЧБФШ ЧТЕНЕОЙ. йОДЕЛУОЩК БДТЕУ - ЬФП Й ЪБВПФБ, Й Ч ФП ЦЕ ЧТЕН ПВЕУРЕЮЕОЙЕ УРПУПВБ ПВЯЕДЙОЕОЙС ЧУЕИ ЪОБЮЕОЙК Ч ЗТХРРЩ ЙЪ ПДОПК ЙМЙ ВПМШЫЕ УФТПЛ, ЛПФПТЩЕ ПФМЙЮБАФУС ПДОБ ПФ ДТХЗПК. ч зМБЧЕ 18, НЩ ВХДЕН ПРЙУЩЧБФШ ВПМЕЕ ОЕРПУТЕДУФЧЕООЩК УРПУПВ ЛПФПТЩК ЪБУФБЧЙФ ЧБЫЙ ЪОБЮЕОЙС ВЩФШ ХОЙЛБМШОЩНЙ. оП ЬФПФ НЕФПД ОЕ УХЭЕУФЧХЕФ Ч ТБООЙИ ЧЕТУЙСИ SQL. фБЛ ЛБЛ ХОЙЛБМШОПУФШ ЮБУФП ОЕПВИПДЙНБ, ЙОДЕЛУЩ Й ЙУРПМШЪПЧБМЙУШ У ЬФПК ГЕМША. йОДЕЛУЩ - ЬФП УТЕДУФЧП SQL, ЛПФПТПЕ ТПДЙМ УБН ТЩОПЛ, Б ОЕ ANSI. рПЬФПНХ, УБН РП УЕВЕ УФБОДБТФ ANSI Ч ОБУФПСЭЕЕ ЧТЕНС ОЕ РПДДЕТЦЙ- ЧБЕФ ЙОДЕЛУЩ, ИПФС ПОЙ ПЮЕОШ РПМЕЪОЩ Й ЫЙТПЛП РТЙНЕОСЕНЩ. лПЗДБ ЧЩ УПЪДБЕФЕ ЙОДЕЛУ Ч РПМЕ, ЧБЫБ ВБЪБ ДБООЩИ ЪБРПНЙОБЕФ УППФЧЕФУФЧХАЭЙК РПТСДПЛ ЧУЕИ ЪОБЮЕОЙК ЬФПЗП РПМ Ч ПВМБУФЙ РБНСФЙ. рТЕДРПМПЦЙН ЮФП ОБЫБ ФБВМЙГБ ъБЛБЪЮЙЛПЧ ЙНЕЕФ ФЩУСЮЙ ЧИПДПЧ, Б ЧЩ ИПФЙФЕ ОБКФЙ ЪБЛБЪЮЙЛБ У ОПНЕТПН=2999. фБЛ ЛБЛ УФТПЛЙ ОЕ ХРПТСДПЮЕОЩ, ЧБЫБ РТПЗТБННБ ВХДЕФ РТПУНБФТЙЧБФШ ЧУА ФБВМЙГХ, УФТПЛХ ЪБ УФТПЛПК, РТПЧЕТСС ЛБЦДЩК ТБЪ ЪОБЮЕОЙЕ РПМ cnum ОБ ТБЧЕОУФЧП ЪОБЮЕОЙА 2999. пДОБЛП, ЕУМЙ ВЩ ЙНЕМУС ЙОДЕЛУ Ч РПМЕ cnum , ФП РТПЗТБННБ НПЗМБ ВЩ ЧЩКФЙ ОБ ОПНЕТ 2999 РТСНП РП ЙОДЕЛУХ Й ДБФШ ЙОЖПТНБГЙА П ФПН ЛБЛ ОБКФЙ РТБЧЙМШОХА УФТПЛХ ФБВМЙГЩ. ч ФП ЧТЕН ЛБЛ ЙОДЕЛУ ЪОБЮЙФЕМШОП ХМХЮЫБЕФ ЬЖЖЕЛФЙЧОПУФШ ЪБРТПУПЧ, ЙУРПМШЪПЧБОЙЕ ЙОДЕЛУБ ОЕУЛПМШЛП ЪБНЕДМСЕФ ПРЕТБГЙЙ НПДЙЖЙЛБГЙЙ DML( ФБЛЙЕ ЛБЛ INSERT Й DELETE ), Б УБН ЙОДЕЛУ ЪБОЙНБЕФ ПВЯЕН РБНСФЙ. уМЕДПЧБФЕМШОП, ЛБЦДЩК ТБЪ ЛПЗДБ ЧЩ УПЪДБЕФЕ ФБВМЙГХ чЩ ДПМЦОЩ РТЙОСФШ ТЕЫЕОЙЕ, ЙОДЕЛУЙТПЧБФШ ЕЕ ЙМЙ ОЕФ. йОДЕЛУЩ НПЗХФ УПУФПСФШ ЙЪ НОПЗПЮЙУМЕООЩИ РПМЕК. еУМЙ ВПМШЫЕ ЮЕН ПДОП РПМЕ ХЛБЪЩЧБЕФУС ДМС ПДОПЗП ЙОДЕЛУБ, ЧФПТПЕ ХРПТСДПЮЙЧБЕФУС ЧОХФТЙ РЕТЧПЗП, ФТЕФШЕ ЧОХФТЙ ЧФПТПЗП, Й ФБЛ ДБМЕЕ. еУМЙ ЧЩ ЙНЕМЙ РЕТЧПЕ Й РПУМЕД- ОЕЕ ЙН Ч ДЧХИ ТБЪМЙЮОЩИ РПМСИ ФБВМЙГЩ, ЧЩ НПЗМЙ ВЩ УПЪДБФШ ЙОДЕЛУ ЛПФПТЩК ВЩ ХРПТСДПЮЙМ РТЕДЩДХЭЕЕ РПМЕ ЧОХФТЙ РПУМЕДХАЭЕЗП. ьФП НПЦЕФ ВЩФШ ЧЩРПМОЕОП ОЕЪБЧЙУЙНП ПФ УРПУПВБ ХРПТСДПЮЙЧБМЙ УФПМВГПЧ Ч ФБВМЙГЕ. уЙОФБЛУЙУ ДМС УПЪДБОЙС ЙОДЕЛУ - ПВЩЮОП УМЕДХАЭЙК ( РПНОЙФЕ, ЮФП ЬФП ОЕ ANSI УФБОДБТФ ): CREATE INDEX ON ( [,]...); фБВМЙГБ, ЛПОЕЮОП, ДПМЦОБ ХЦЕ ВЩФШ УПЪДБОБ Й ДПМЦОБ УПДЕТЦБФШ ЙН УФПМВГБ. йН ЙОДЕЛУБ ОЕ НПЦЕФ ВЩФШ ЙУРПМШЪПЧБОП ДМС ЮЕЗП-ФП ДТХЗПЗП Ч ВБЪЕ ДБООЩИ ( МАВЩН РПМШЪПЧБФЕМЕН ). пДОБЦДЩ УПЪДБООЩК, ЙОДЕЛУ ВХДЕФ ОЕЧЙДЙН РПМШЪПЧБФЕМА. SQL УБН ТЕЫБЕФ ЛПЗДБ ПО ОЕПВИПДЙН ЮФПВЩ УУЩМБФШУС ОБ ОЕЗП Й ДЕМБЕФ ЬФП БЧФПНБФЙЮЕУЛЙ. еУМЙ, ОБРТЙНЕТ, ФБВМЙГБ ъБЛБЪЮЙЛПЧ ВХДЕФ ОБЙВПМЕЕ ЮБУФП ХРПНЙОБЕНПК Ч ЪБРТПУБИ РТПДБЧГПЧ Л ЙИ УПВУФЧЕООПК ЛМЙЕОФХТЕ, ВЩМП ВЩ РТБЧЙМШОП УПЪДБФШ ФБЛПК ЙОДЕЛУ Ч РПМЕ snum ФБВМЙГЩ ъБЛБЪЮЙЛПЧ. CREATE INDEX Clientgroup ON Customers (snum); фЕРЕТШ, ФПФ РТПДБЧЕГ ЛПФПТЩК ЙНЕЕФ ПФОПЫЕОЙЕ Л ЬФПК ФБВМЙГЩ УНПЦЕФ ОБКФЙ УПВУФЧЕООХА ЛМЙЕОФХТХ ПЮЕОШ ВЩУФТП. хойлбмшопуфш йоделуб йОДЕЛУХ Ч РТЕДЩДХЭЕН РТЙНЕТЕ, Л УЮБУФША, ОЕ РТЕДРЙУЩЧБЕФУС ХОЙЛБМШОПУФШ, ОЕУНПФТС ОБ ОБЫЕ ЪБНЕЮБОЙЕ, ЮФП ЬФП СЧМСЕФУС ПДОЙН ЙЪ ОБЪОБЮЕОЙК ЙОДЕЛУБ. дБООЩК РТПДБЧЕГ НПЦЕФ ЙНЕФШ МАВПЕ ЮЙУМП ЪБЛБЪЮЙЛПЧ. пДОБЛП, ЬФПЗП ОЕ УМХЮЙФУС ЕУМЙ НЩ ЙУРПМШЪХЕН ЛМАЮЕЧПЕ УМПЧП UNIQUE РЕТЕД ЛМАЮЕЧЩН УМПЧПН INDEX. рПМЕ Уnum, Ч ЛБЮЕУФЧЕ РЕТЧЙЮОПЗП ЛМАЮБ, УФБОЕФ РЕТЧЩН ЛБОДЙДБФПН ДМС ХОЙЛБМШОПЗП ЙОДЕЛУБ: CREATE UNIQUE INDEX Custid ON Customers (cnum); ртйнеюбойе: ЬФБ ЛПНБОДБ ВХДЕФ ПФЛМПОЕОБ ЕУМЙ ХЦЕ ЙНЕАФУС ЙДЕОФЙЮОЩЕ ЪОБЮЕОЙС Ч РПМЕ cnum. мХЮЫЙК УРПУПВ ЙНЕФШ ДЕМП У ЙОДЕЛУБНЙ УПУФПЙФ Ч ФПН, ЮФПВЩ УПЪДБЧБФШ ЙИ УТБЪХ РПУМЕ ФПЗП, ЛБЛ ФБВМЙГБ УПЪДБОБ Й РТЕЦДЕ, ЮЕН ЧЧЕДЕОЩ МАВЩЕ ЪОБЮЕОЙС. фБЛ ЦЕ ПВТБФЙФЕ ЧОЙНБОЙЕ ЮФП, ДМС ХОЙЛБМШОПЗП ЙОДЕЛУБ ВПМЕЕ ЮЕН ПДОПЗП РПМ, ЬФП - ЛПНВЙОБГЙС ЪОБЮЕОЙК, ЛБЦДПЕ ЙЪ ЛПФПТЩИ, НПЦЕФ Й ОЕ ВЩФШ ХОЙЛБМШОЩН. рТЕДЩДХЭЙК РТЙНЕТ - ЛПУЧЕООЩК УРПУПВ ЪБУФБЧЙФШ РПМЕ cnum ТБВПФБФШ ЛБЛ РЕТЧЙЮОЩК ЛМАЮ ФБВМЙГЩ ъБЛБЪЮЙЛПЧ. вБЪЩ ДБООЩИ ЧПЪДЕКУФЧХАФ ОБ РЕТЧЙЮОЩЕ Й ДТХЗЙЕ ЛМАЮЙ ВПМЕЕ ОЕРПУТЕДУФЧЕООП. нЩ ВХДЕН ПВУХЦДБФШ ЬФПФ ЧЩЧПД ДБМЕЕ Ч зМБЧБИ 18 Й 19. хдбмеойе йоделупч зМБЧОЩН РТЙЪОБЛПН ЙОДЕЛУБ СЧМСЕФУС ЕЗП ЙН - РПЬФПНХ ПО НПЦЕФ ВЩФШ ХДБМЕО. пВЩЮОП РПМШЪПЧБФЕМЙ ОЕ ЪОБАФ П УХЭЕУФЧПЧБОЙЙ ЙОДЕЛУБ. SQL БЧФПНБФЙЮЕУЛЙ ПРТЕДЕМСЕФ РПЪЧПМЕОП МЙ РПМШЪПЧБФЕМА ЙУРПМШЪПЧБФШ ЙОДЕЛУ, Й ЕУМЙ ДБ, ФП ТБЪТЕЫБЕФ ЙУРПМШЪПЧБФШ ЕЗП. пДОБЛП, ЕУМЙ ЧЩ ИПФЙФЕ ХДБМЙФШ ЙОДЕЛУ, ЧЩ ДПМЦОЩ ЪОБФШ ЕЗП ЙН. ьФПФ УЙОФБЛУЙУ ЙУРПМШЪХЕФУС ДМС ХДБМЕОЙС ЙОДЕЛУБ: DROP INDEX ; хДБМЕОЙЕ ЙОДЕЛУБ ОЕ ЧПЪДЕКУФЧХЕФ ОБ УПДЕТЦБОЙЕ РПМЕК. йънеоеойе фбвмйгщ рпуме фпзп лбл поб вщмб упъдбоб лПНБОДБ ALTER TABLE ОЕ ЮБУФШ УФБОДБТФБ ANSI; ОП ЬФП - ЫЙТПЛП ДПУФХРОБ, Й ДПЧПМШОП УПДЕТЦБФЕМШОБ ЖПТНБ, ИПФС ЕЕ ЧПЪНПЦОПУФЙ ОЕУЛПМШЛП ПЗТБОЙЮЕОЩ. пОБ ЙУРПМШЪХЕФУС ЮФПВЩ ЙЪНЕОЙФШ ПРТЕДЕМЕОЙЕ УХЭЕУФЧХАЭЕК ФБВМЙГЩ. пВЩЮОП, ПОБ ДПВБЧМСЕФ УФПМВГЩ Л ФБВМЙГЕ. йОПЗДБ ПОБ НПЦЕФ ХДБМСФШ УФПМВГЩ ЙМЙ ЙЪНЕОСФШ ЙИ ТБЪНЕТЩ, Б ФБЛЦЕ Ч ОЕЛПФПТЩИ РТПЗТБННБИ ДПВБЧМСФШ ЙМЙ ХДБМСФШ ПЗТБОЙЮЕОЙС ( ПВУХЦДЕООЩЕ Ч зМБЧЕ 18 ). фЙРЙЮОЩК УЙОФБЛУЙУ ЮФПВЩ ДПВБЧЙФШ УФПМВЕГ Л ФБВМЙГЕ : ALTER TABLE ADD ; уФПМВЕГ ВХДЕФ ДПВБЧМЕО УП ЪОБЮЕОЙЕН NULL ДМС ЧУЕИ УФТПЛ ФБВМЙГЩ. оПЧЩК УФПМВЕГ УФБОЕФ РПУМЕДОЙН РП РПТСДЛХ УФПМВГПН ФБВМЙГЩ. чППВЭЕ ФП, НПЦОП ДПВБЧЙФШ УТБЪХ ОЕУЛПМШЛП ОПЧЩИ УФПМВГПЧ, ПФДЕМЙЧ ЙИ ЪБРСФЩНЙ, Ч ПДОПК ЛПНБОДЕ. йНЕЕФУС ЧПЪНПЦОПУФШ ХДБМСФШ ЙМЙ ЙЪНЕОСФШ УФПМВГЩ. оБЙВПМЕЕ ЮБУФП, ЙЪНЕОЕОЙЕН УФПМВГБ НПЦЕФ ВЩФШ РТПУФП ХЧЕМЙЮЕОЙЕ ЕЗП ТБЪНЕТБ, ЙМЙ ДПВБЧМЕОЙЕ( ХДБМЕОЙЕ ) ПЗТБОЙЮЕОЙС. чБЫБ УЙУФЕНБ ДПМЦОБ ХВЕДЙФШУС, ЮФП МАВЩЕ ЙЪНЕОЕОЙС ОЕ РТПФЙЧПТЕЮБФ УХЭЕУФЧХАЭЙН ДБООЩН - ОБРТЙНЕТ РТЙ РПРЩФЛЕ ДПВБЧЙФШ ПЗТБОЙЮЕОЙЕ Л УФПМВГХ ЛПФПТЩК ХЦЕ ЙНЕМ ЪОБЮЕОЙЕ РТЙ ОБТХЫЕОЙЙ ЛПФПТПЗП ПЗТБОЙЮЕОЙЕ ВХДЕФ ПФЛМПОЕОП. мХЮЫЕ ЧУЕЗП ДЧБЦДЩ РТПЧЕТЙФШ ЬФП. рП ЛТБКОЕК НЕТЕ, РПУНПФТЙФЕ ДПЛХНЕОФБГЙА ЧБЫЕК УЙУФЕНЩ ЮФПВЩ ХВЕДЙФШ- У, ЗБТБОФЙТХЕФ МЙ ПОБ ЮФП ЙНЕООП ЬФП ВЩМП РТЙЮЙОПК. йЪ-ЪБ ОЕУФБОДБТФОПЗП ИБТБЛФЕТБ ЛПНБОДЩ ALTER TABLE, ЧБН ЧУЕ ТБЧОП ОЕПВИПДЙНП РПУНПФТЕФШ ФПФ ТБЪДЕМ ЧБЫЕК УЙУФЕНОПК ДПЛХНЕОФБГЙЙ ЗДЕ ЗПЧПТЙФУС ПВ ПУПВЩИ УМХЮБСИ. ALTER TABLE - ОЕ ДЕКУФЧХЕФ, ЛПЗДБ ФБВМЙГБ ДПМЦОБ ВЩФШ РЕТЕПРТЕДЕМЕОБ, ОП ЧЩ ДПМЦОЩ ТБЪТБВБФЩЧБФШ ЧБЫХ ВБЪХ ДБООЩИ РП ЧПЪНПЦОПУФЙ ФБЛ ЮФПВЩ ОЕ УМЙЫЛПН ЕК Ч ЬФПН ДПЧЕТСФШУС. йЪНЕОЕОЙЕ УФТХЛФХТЩ ФБВМЙГЩ ЛПЗДБ ПОБ ХЦЕ Ч ЙУРПМШЪПЧБОЙЙ - ПРБУОП! рТПУНПФТЙФЕ ЧОЙНБФЕМШОП ФБВМЙГЩ, ЛПФПТЩЕ СЧМССУШ ЧФПТЙЮОЩНЙ ФБВМЙГБНЙ У ЙЪЧМЕЮЕООЩНЙ ДБООЩНЙ ЙЪ ДТХЗПК ФБВМЙГЩ ( УНПФТЙ зМБЧХ 20 ), ОЕ ДПМЗП РТБЧЙМШОП ТБВПФБАФ, Б РТПЗТБННЩ ЙУРПМШЪХАЭЙЕ ЧМПЦЕООЩК SQL( зМБЧБ 25 ) ЧЩРПМОСАФУС ОЕРТБЧЙМШОП ЙМЙ ОЕ ЧУЕЗДБ РТБЧЙМШОП. лТПНЕ ФПЗП, ЙЪНЕОЕОЙЕ НПЦЕФ УФЕТЕФШ ЧУЕИ РПМШЪПЧБФЕМЕК ЙНЕАЭЙИ ТБЪТЕЫЕОЙЕ ПВТБЭБФШУС Л ФБВМЙГЕ. рП ЬФЙН РТЙЮЙОБН, ЧЩ ДПМЦОЩ ТБЪТБВБФЩЧБФШ ЧБЫЙ ФБВМЙГЩ ФБЛ, ЮФПВЩ ЙУРПМШЪПЧБФШ ALTER TABLE ФПМШЛП Ч ЛТБКОЕН УМХЮБЕ. еУМЙ ЧБЫБ УЙУФЕНБ ОЕ РПДДЕТЦЙЧБЕФ ALTER TABLE , ЙМЙ ЕУМЙ ЧЩ ИПФЙФЕ ЙЪВЕЦБФШ ЕЕ ЙУРПМШЪПЧБОЙС, ЧЩ НПЦЕФЕ РТПУФП УПЪДБФШ ОПЧХА ФБВМЙГХ, У ОЕПВИПДЙНЩНЙ ЙЪНЕОЕОЙСНЙ РТЙ УПЪДБОЙЙ, Й ЙУРПМШЪПЧБФШ ЛПНБОДХ INSERT У SELECT * ЪБРТПУПН ЮФПВЩ РЕТЕРЙУБФШ Ч ОЕЕ ДБООЩЕ ЙЪ УФБТПК ФБВМЙГЩ. рПМШЪПЧБФЕМСН ЛПФПТЩН ВЩМ РТЕДПУФБЧМЕО ДПУФХР Л УФБТПК ФБВМЙГЕ ( УН. зМБЧХ 22 ) ДПМЦЕО ВЩФШ РТЕДПУФБЧМЕО ДПУФХР Л ОПЧПК ФБВМЙГЕ. хдбмеойе фбвмйгщ чЩ ДПМЦОЩ ВЩФШ УПВУФЧЕООЙЛПН( Ф.Е. ВЩФШ УПЪДБФЕМЕН ) ФБВМЙГЩ ЮФПВЩ ЙНЕФШ ЧПЪНПЦОПУФШ ХДБМЙФШ ЕЕ. рПЬФПНХ ОЕ ЧПМОХКФЕУШ П УМХЮБКОПН ТБЪТХЫЕОЙЙ ЧБЫЙИ ДБООЩИ, SQL УОБЮБМБ РПФТЕВХЕФ ЮФПВЩ ЧЩ ПЮЙУФЙМЙ ФБВМЙГХ РТЕЦДЕ, ЮЕН ХДБМЙФ ЕЕ ЙЪ ВБЪЩ ДБООЩИ. фБВМЙГБ У ОБИПДСЭЙНЙУС Ч ОЕК УФТПЛБНЙ, ОЕ НПЦЕФ ВЩФШ ХДБМЕОБ. пВТБФЙФЕУШ Л зМБЧЕ 15 ЪБ РПДТПВОПУФСНЙ ПФОПУЙФЕМШОП ФПЗП ЛБЛ ХДБМСФШ УФТПЛЙ ЙЪ ФБВМЙГЩ. уЙОФБЛУЙУ ДМС ХДБМЕОЙС ЧБЫЕК ФБВМЙГЩ, ЕУМЙ ЛПОЕЮОП ПОБ СЧМСЕФУС РХУФПК, УМЕДХАЭБС: DROP TABLE < table name >; рТЙ РПДБЮЕ ЬФПК ЛПНБОДЩ, ЙН ФБВМЙГЩ ВПМШЫЕ ОЕ ТБУРПЪОБЕФУС Й ОЕФ ФБЛПК ЛПНБОДЩ ЛПФПТБС НПЗМБ ВЩФШ ДБОБ ЬФПНХ ПВЯЕЛФХ. чЩ ДПМЦОЩ ХВЕДЙФШУС, ЮФП ЬФБ ФБВМЙГБ ОЕ УУЩМБЕФУС ЧОЕЫОЙН ЛМАЮПН Л ДТХЗПК ФБВМЙГЕ( чОЕЫОЙЕ ЛМАЮЙ ПВУХЦДБАФУС Ч зМБЧЕ 19 ), Й ЮФП ПОБ ОЕ ЙУРПМШЪХЕФУС Ч ПРТЕДЕМЕОЙЙ рТЕДУФБЧМЕОЙС( зМБЧБ 20 ). ьФБ ЛПНБОДБ ЖБЛФЙЮЕУЛЙ ОЕ СЧМСЕФУС ЮБУФША УФБОДБТФБ ANSI, ОП ПОБ ПВЭЕ РПДДЕТЦЙЧБЕНБС Й РПМЕЪОБ. л УЮБУФША, ПОБ ВПМЕЕ РТПУФБ, Й УМЕДПЧБФЕМШОП ВПМЕЕ ОЕРТПФЙЧПТЕЮЙЧБС, ЮЕН ALTER TABLE . ANSI РТПУФП ОЕ ЙНЕЕФ УРПУПВБ ДМС ПРТЕДЕМЕОЙС ТБЪТХЫЕООЩИ ЙМЙ ОЕРТБЧЙМШОЩИ ФБВМЙГ. теъане фЕРЕТШ чЩ ХЦЕ ВЕЗМП ПТЙЕОФЙТХЕФЕУШ Ч ПУОПЧБИ ПРТЕДЕМЕОЙК ДБООЩИ. чЩ НПЦЕФЕ УПЪДБЧБФШ, ЙЪНЕОСФШ, Й ХДБМСФШ ФБВМЙГЩ. ч ФП ЧТЕН ЛБЛ ФПМШЛП РЕТЧБС ЙЪ ЬФЙИ ЖХОЛГЙК - ЮБУФШ ПЖЙГЙБМШОПЗП УФБОДБТФБ SQL, ДТХЗЙЕ ВХДХФ ЧТЕН ПФ ЧТЕНЕОЙ НЕОСФШУС, ПУПВЕООП - ALTER TABLE. DROP TABLE РПЪЧПМСЕФ ЧБН ЙЪВБЧЙФШУС ПФ ФБВМЙГ ЛПФПТЩЕ ВЕУРПМЕЪОЩ. пОБ ХОЙЮФПЦБЕФ ФПМШЛП РХУФЩЕ ФБВМЙГЩ, Й УМЕДПЧБФЕМШОП ОЕ ТБЪТХЫБЕФ ДБООЩЕ. чЩ ФЕРЕТШ ЪОБЕФЕ ПВ ЙОДЕЛУБИ Б ФБЛЦЕ, ЛБЛ ЙИ УПЪДБЧБФШ Й ХДБМСФШ. SQL ОЕ ДБЕФ ЧБН ВПМШЫПЗП ХРТБЧМЕОЙС ОБД ЙНЙ, ФБЛ ЛБЛ ТЕБМЙЪБГЙС ЛПФПТХА ЧЩ ЙУРПМШЪХЕФЕ ДПЧПМШОП ХДБЮОП ПРТЕДЕМСЕФ, ЛБЛ ВЩУФТП ЧЩРПМОСАФУС ТБЪМЙЮОЩЕ ЛПНБОДЩ. йОДЕЛУЩ - ЬФП ПДЙО ЙЪ ЙОУФТХНЕОФПЧ ДБАЭЙК чБН ЧПЪНПЦОПУФШ ЧПЪДЕКУФЧПЧБФШ ОЕРПУТЕДУФЧЕООП ОБ ЬЖЖЕЛФЙЧОПУФШ ЧБЫЙИ ЛПНБОД Ч SQL. нЩ ТБУУНПФТЕМЙ ЙОДЕЛУЩ ЪДЕУШ ЮФПВЩ ПФМЙЮБФШ ЙИ ПФ ПЗТБОЙЮЕОЙК, У ЛПФПТЩНЙ ЙИ ОЕМШЪС РХФБФШ. пЗТБОЙЮЕОЙС - ЬФП ФЕНБ зМБЧЩ 18 Й зМБЧЩ 19. тбвпфб у SQL 1. оБРЙЫЙФЕ РТЕДМПЦЕОЙЕ CREATE TABLE ЛПФПТПЕ ВЩ ЧЩЧЕМП ОБЫХ ФБВМЙГХ ъБЛБЪЮЙЛПЧ. 2. оБРЙЫЙФЕ ЛПНБОДХ ЛПФПТБС ВЩ ДБЧБМБ ЧПЪНПЦОПУФШ РПМШЪПЧБФЕМА ВЩУФТП ЙЪЧМЕЛБФШ РПТСДЛЙ УЗТХРРЙТПЧБООЩЕ РП ДБФБН ЙЪ ФБВМЙГЩ рПТСДЛПЧ. 3. еУМЙ ФБВМЙГБ рПТСДЛПЧ ХЦЕ УПЪДБОБ, ЛБЛ чЩ НПЦЕФЕ ЪБУФБЧЙФШ РПМЕ onum ВЩФШ ХОЙЛБМШОЩН ( ЕУМЙ ДПРХУФЙФШ ЮФП ЧУЕ ФЕЛХЭЙЕ ЪОБЮЕОЙС ХОЙЛБМШОЩ ) ? 4. уПЪДБКФЕ ЙОДЕЛУ ЛПФПТЩК ВЩ ТБЪТЕЫБМ ЛБЦДПНХ РТПДБЧГХ ВЩУФТП ПФЩУЛЙЧБФШ ЕЗП РПТСДЛЙ УЗТХРРЙТПЧБООЩЕ РП ДБФБН. 5. рТЕДРПМПЦЙН, ЮФП ЛБЦДЩК РТПДБЧЕГ ЙНЕЕФ ФПМШЛП ПДОПЗП ЪБЛБЪЮЙЛБ У ДБООПК ПГЕОЛПК, ЧЧЕДЙФЕ ЛПНБОДХ ЛПФПТБС ЕЗП ЙЪЧМЕЮЕФ. ( уН. рТЙМПЦЕОЙЕ A ДМС ПФЧЕФПЧ. )

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