Общая часть (часть 2) (2015) (by Кибитова) (1161598), страница 41
Текст из файла (страница 41)
Чаще всего выделялись два языка: язык определениясхемы БД (SDL - Schema Definition Language) и язык манипулирования данными(DML - Data Manipulation Language). SDL служил, главным образом, для определениялогической структуры БД, т.е. той структуры БД, какой она представляетсяпользователям. DML содержал набор операторов манипулирования данными, т.е.операторов, позволяющих заносить данные в БД, удалять, модифицировать иливыбирать существующие данные.В современных СУБД обычно поддерживается единый интегрированный язык,содержащий все необходимые средства для работы с БД, начиная от ее создания, иобеспечивающий базовый пользовательский интерфейс с базами данных.
Стандартнымязыком наиболее распространенных в настоящее время реляционных СУБД является язык SQL (Standard Query Language). Прежде всего, язык SQL сочетает средстваSDL иDML, т.е. позволяет определять схему реляционной БД и манипулировать данными.Тип данныхИменованиеобъектов БД (для реляционной БД – в основном, именование таблиц и ихПонятие тип данных в реляционной модели данных полностью адекватно понятию типаданных в языках программирования. Определение типа данных состоит из трехосновных компонентов: множества значений данного типа; набор операций,ТипданныхприменимыхТипданных к значениям типа;способ внешнего представления значений типа(литералов)Тип данныхОбычно в современных реляционных БД допускается хранение символьных, числовыхОбычноввсовременныхреляционных БДдопускаетсяхранениесимвольных,числовыхданных(точныхи приблизительных),битовыхстрок,полностьюспециализированныхчисловыхОбычносовременныхБДдопускаетсяхранениесимвольных,числовыхПонятиетипданныхвреляционныхреляционнойбитовыхмоделиданныхадекватночисловыхпонятиютипаданных(точныхиприблизительных),строк,специализированныхданныхвв(такихкак"деньги"),а такжеБДспециальных"темпоральных"данных(дата, время,данных(точныхи приблизительных),битовыхстрок,специализированныхчисловыхОбычносовременныхреляционныхдопускаетсяхранениесимвольных,числовыхданныхязыкахпрограммирования.ОпределениетипаданныхсостоитизтрехОбычновв современныхреляционныхБДхранениесимвольных,числовыхданных(такихкак"деньги"),аатакжеспециальных"темпоральных"данных(дата,время,ОбычносовременныхреляционныхБДдопускаетсядопускаетсяхранениечисловыхвременнойинтервал).Достаточноактивноразвиваетсяподходксимвольных,расширениюданных(такихкак"деньги"),такжеспециальных"темпоральных"данных(дата,время,данных(точныхииприблизительных),битовыхстрок,специализированныхчисловыхосновныхкомпонентов:множествазначенийданноготипа;наборопераций,данных(точныхприблизительных),битовыхстрок,специализированныхчисловыхвременнойинтервал).Достаточноактивноразвиваетсяподходкрасширениюданных(точныхиприблизительных),битовыхстрок,специализированныхчисловыхвозможностейреляционныхабстрактнымитипамиданных(соответствующимивременнойинтервал).Достаточноактивноразвиваетсяподходк значенийрасширениюданныхкак"деньги"),аасистемтакжеспециальных"темпоральных"данных(дата,время,время,применимыхзначениямтипа;способвнешнегопредставлениятипаданных(таких(такихкак"деньги"),специальных"темпоральных"данных(дата,возможностейсистемабстрактнымитипамиданных(соответствующимиданных(такихкреляционныхкак"деньги"),атакжетакжеспециальных"темпоральных"данных(дата,время,возможностямиобладают,например,системысемействаIngres/Postgres).Внашемвозможностейреляционныхсистемабстрактнымитипамиданных(соответствующимивременнойинтервал).Достаточноактивноразвиваетсяподходкрасширению(литералов)временной интервал).Достаточноактивноразвиваетсяподходк красширениювозможностямиобладают,например,системысемействаIngres/Postgres).Внашемвременнойинтервал).Достаточноактивноразвиваетсяподходрасширениюпримеремы имеемдело с даннымитрехтипов:семействастрокисимволов,целые числаивозможностямиобладают,например,системыIngres/Postgres).В нашемвозможностейреляционныхсистемабстрактнымитипамиданныхцелые(соответствующимивозможностейреляционныхсистемабстрактнымитипамиданных(соответствующимипримеремыимеемделоссданнымитрехтипов:строкисимволов,числаиивозможностейреляционныхсистемабстрактнымитипамиданных(соответствующими"деньги".примеремыимеемделоданнымитрехтипов:строкисимволов,целыечислаОбычно в современныхреляционныхБД допускаетсяхранениесимвольных,числовыхвозможностямиобладают,например,системысемействаIngres/Postgres).В нашемвозможностямиобладают,например,семействаIngres/Postgres)."деньги".возможностямиобладают,например,системысистемысемействаIngres/Postgres).В Внашемнашемданных(точныхиприблизительных),битовыхстрок,специализированныхчисловых"деньги".примерестроки символов,символов,целыецелыечислачислаиипримеремымыимеемимеемделоделоссданнымиданными трехтрех типов: строкипримеремы имеемс даннымитрехтипов: строкисимволов, целыечислаи время,данных (такихкак дело"деньги"),а такжеспециальных"темпоральных"данных(дата,"деньги"."деньги"."деньги".Доменвременной интервал).
Достаточно активно развивается подход к расширениюДоменДоменвозможностей реляционных систем абстрактными типами данных (соответствующимивозможностями обладают, например, системы семейства Ingres/Postgres). В нашемДоменДоменДоменПонятиеболеедля базданных,хотяи имеетцелыенекоторыепримередоменамы имеемделоспецифичнос данными трехтипов:строкисимволов,числа ианалогииПонятиедоменаболееспецифичнодлябазданных,хотяиимеетнекоторыеаналогиис"деньги".подтипамив некоторыхязыкахдляпрограммирования.самомнекоторыеобщем видедоменПонятиедоменаболее специфичнобаз данных, хотя и Вимеетаналогииссопределяетсяподтипамивнекоторыхязыкахпрограммирования.Всамомобщемвидедомензаданиемнекоторогобазовоготипаданных,ккоторомуотносятсяподтипамив некоторыхязыках дляпрограммирования.самомобщем видедоменПонятиедоменаболееспецифичноспецифичнодля базбаз данных, хотянекоторыеаналогииПонятиедоменаболеехотя ииВимеетимеетнекоторыеаналогииопределяетсязаданиемнекоторогобазовоготипаданных,кккоторомуотносятсяПонятиедоменаболееспецифичнодля баз данных,хотяВисамомимеетнекоторыеаналогииэлементыдомена,ипроизвольногологическоговыражения,применяемогокэлементуопределяетсязаданиемнекоторогобазовоготипаданных,которомуотносятсясподтипамивнекоторыхязыкахпрограммирования.общемвидедоменс подтипами в некоторых языках программирования.
В самом общем виде доменэлементыдомена,ипроизвольногологическоговыражения,применяемогокэлементусподтипамивнекоторыхязыкахпрограммирования.Всамомобщемвидедоментипаданных.Есливычислениеэтогологическоговыражениядаетрезультат"истина",Домен домена,определяетсязаданиемнекоторогологическогобазового типатипаданных,относятсяэлементыи произвольноговыражения,применяемогок элементуопределяетсязаданиемнекоторогобазовогоданных, кккоторомукоторомуотносятсятипаданных.Есливычислениеэтогологическоговыражениядаетрезультат"истина",определяетсязаданиемнекоторогобазовоготипаданных,доменомкприменяемогокоторомуотносятсятоэлементданныхявляетсяэлементомдомена.Скаждымсвязываетсяимя,элементыдомена,ипроизвольногологическоговыражения,ктипаданных.Есливычислениеэтогологическоговыражениядаетрезультат"истина",элементы домена, и произвольного логического выражения, применяемого кэлементуэлементутоэлементыэлементданныхявляетсяэлементомдомена.Скаждымдоменомсвязываетсяимя,домена,ипроизвольногологическоговыражения,применяемогокэлементууникальноесредиименвсехдоменовсоответствующейбазыданных.данных.Есливычислениевычислениеэтого логическогологическогодает"истина",тотипаэлементданныхявляетсяэлементомдомена.
С выражениякаждым доменомсвязываетсяимя,типаданных.Еслиэтоговыражениядаетрезультатрезультат"истина",уникальноесредиименвсехдоменовбазыданных.типаданных.Есливычислениеэтогосоответствующейлогическоговыражениядаетнекоторыерезультат "истина",Понятиедоменаболееспецифичнодлябазданных,хотяиимеетаналогиитоэлементданныхявляетсяэлементомдомена.Скаждымдоменомсвязываетсяимя,уникальноесредиименвсехдоменовсоответствующейбазыданных.то элемент данных является элементом домена.
С каждым доменом связывается имя,тоэлемент правильнойданныхявляетсяэлементомдомена. С каждымсвязываетсяимя,с подтипамив некоторыхязыкахпрограммирования.Вдоменомсамомвиде пониманиедоменуникальноесредиименвсехдоменовсоответствующейбазыданных.Наиболееинтуитивнойтрактовкойпонятиядоменаобщемявляетсяуникальноесредиименвсехдоменовсоответствующейбазыданных.уникальноесредиименвсехдоменовсоответствующейбазыданных.определяетсязаданиемнекоторогобазовоготипаданных,ккоторомуотносятсяНаиболееправильнойинтуитивнойтрактовкойпонятиядоменаявляетсяпониманиедомена какправильнойдопустимогопотенциальногоограниченногозначенийданногоНаиболееинтуитивнойтрактовкойпонятияподмножествадомена являетсяпониманиеэлементыдомена,ипроизвольногологическоговыражения,применяемогокэлементудоменакакдопустимогопотенциальногоограниченногоподмножествазначенийданногоНаиболееправильнойинтуитивнойтрактовкойпонятиядоменаявляетсяпониманиетипа.Например,домен"Имена" в трактовкойнашемпримереопределеннабазовомтипестрокдоменакакправильнойдопустимогопотенциальногоограниченногоподмножествазначенийданногоНаиболееинтуитивнойпонятиядоменаявляетсяпониманиетипаНапример,данных.Есливычислениеэтогологическоговыражениядаетрезультат"истина",типа.домен"Имена"в нашемпримереопределеннастроки,базовомтипестрокНаиболееправильнойинтуитивнойтрактовкойпонятиядоменаявляетсяпониманиедоменакакдопустимогопотенциальногоограниченногоподмножествазначенийданногосимволов,новчислоегозначениймогутвходитьтолькотекоторыемогуттипа.
Например,домен потенциального"Имена" в нашемпримере определенна базовомтипестрокдоменакак допустимогоограниченногоподмножествазначенийданногото элементданныхявляетсяэлементомдомена.С каждымдоменомсвязываетсяимя,доменакакпотенциальногоограниченногоподмножествазначенийданногосимволов,нодопустимогов числоего"Имена"значениймогутвходитьтолькоте настроки,которыемогуттипа.Например,доменвнашемпримереопределенбазовомтипестрокизображатьимя(вчастности,такиестрокинемогутначинатьсясмягкогознака).символов,но в числоегозначениймогут примеревходить определентолько те настроки,которыемогуттипа.Например,домен"Имена"в нашембазовомтипе строкуникальноесредиименеговсехдоменовсоответствующейбазытеданных.типа.Например,домен"Имена"встрокинашемпримереопределенбазовомтипе строкизображатьимя(вчислочастности,такиенемогут начинатьсяснамягкогознака).символов,значениймогутвходитькоторыеизображатьимя(в частности,такие строкинемогут тольконачинатьсяс мягкогознака).могутсимволов,ноноввчислоего значениймогутвходитьтолькоте строки,строки,которыемогутсимволов,нов (вчислоегоотношениязначениймогутневходитьтолькотес строки,могутизображатьимячастности,такие строкимогут начинатьсямягкогознака).Еслинекоторыйопределяетсянекоторомдомене которые(как,например,изображатьимя (в атрибутчастности,такие строкине могут наначинатьсяс мягкогознака).изображатьимя(вчастности,такиестрокинемогутначинатьсясмягкогознака).НаиболееправильнойинтуитивнойтрактовкойпонятиядоменаявляетсяпониманиеЕслинекоторыйатрибутотношениянаопределяетсяна некоторомдомене (как,ограничениенапример, атрибутсотр_имяопределяетсядомене имена),то в дальнейшемЕслинекоторыйатрибутотношенияопределяетсяна некоторомдоменезначений(как, например,доменакакдопустимогопотенциальногоограниченногоподмножестваданногоЕслинекоторыйатрибутотношенияопределяетсянанекоторомдомене(как,например,атрибутсотр_имяопределяетсяна доменеимена),накладываемогото в дальнейшемограничениедоменаиграетатрибутрольограниченияцелостности,на(как,значенияэтогоатрибутсотр_имяопределяетсянадоменеимена),то в дальнейшемограничениеЕслинекоторыйотношенияопределяетсяна некоторомдомененапример,типа.Например,домен"Имена"внашемпримереопределеннабазовомтипестрокатрибутсотр_имяопределяетсянадоменеимена),товдальнейшемограничениеЕслинекоторыйатрибутотношенияопределяетсянанекоторомдомене(как,например,доменаиграетрольограниченияцелостности,накладываемогоназначенияэтогоатрибутадоменаиграетограничениянакладываемогона значенияэтогоатрибутсотр_имяопределяетсяна целостности,доменеимена),то в дальнейшемограничениесимволов,но врольчислоего значениймогуттолькоте строки,которыемогутдоменаиграетрольограничениянакладываемогона значенияэтогоатрибутсотр_имяопределяетсянацелостности,доменевходитьимена),то в дальнейшемограничениеатрибутаатрибутадоменаиграетрольограниченияцелостности,накладываемогоназначенияэтогоизображать имяроль(в частности,такие строкине могутнакладываемогоначинаться с мягкогознака).