Модели данных и системы управления базами данных
.pdf
Òеоретический рàздел |
11 |
|
|
Ïроизведением бинàрных отношений Ð1 À*Â и Ð2 Â*Ñ или композицией
Ð1 и Ð2 нàзывàется множество Ð1 ° Ð2 {(x,y) | x° A,y° C, и нàйдется элемент z° B тàкой, что (x,z) ° Ð1 и (z,y)° Ð2}.
7. Ñвойствà отношений.
Îтношения хàрàктеризуются нàличием у них следующих свойств:
1)отношение нàзывàется симметричным, если à,b° Õ из следует bRà;
2)отношение нàзывàется àнтисимметричным, если à,b° Õ из àRb следует, что Ü не нàходится в отношении R к à;
3)отношение (Õ,R) нàзывàется рефлексивным, если à° Õ и спрàведливо àRà;
4)отношение нàзывàется àнтирефлексивным, если à° Õ не выполняется àRà
5)отношение нàзывàется трàнзитивным, если из того, что àRb и bRс, следует
àRс.
Ïримеры.
1.Ñимметричности и àнтисимметричности:
1.Îтношение рàвенствà симметрично нà любом множестве
1.Îтношение «быть больше» и «быть не меньше» нà любом числовом множестве
1.Îтношение родствà симметрично нà любом множестве людей
1.Îтношение «быть сестрой» симметрично нà любом множестве женщин.
1.Îтношение дружбы, кàк прàвило, симметрично, à отношение любви, к сожàлению, чàсто бывàет несимметричным.
2.Ðефлексивности и àнтирефлексивности:
2.Îтношение рàвенствà рефлексивно нà любом множестве – кàждый предмет рàвен сàмому себе.
2.Îтношение нерàвенствà àнтирефлексивно нà любом множестве
3.Òрàнзитивности:
3.1. Íà множестве прямых плоскости отношение пàрàллельности трàнзитивно, à отношение перпендикулярности нетрàнзитивно.
Íàиболее известными отношениями являются отношение эквивàлентности и отношение порядкà.
Îтношение нàзывàется отношением эквивàлентности и обознàчàется символом «Τ», если оно рефлексивно (хΤх), симметрично хΤу–>уΤх) и трàнзитивно (хΤ у и yΤz–>xΤz). Ïримерàми отношений эквивàлентности являются отношение «жить в одном городе» для множествà людей, отношение пàрàллельности прямых и т.п.
Îтношение эквивàлентности нà любом множестве Ì зàдàёт рàзбиение его нà подмножествà, которые в этом случàе нàзывàются клàссàми эквивàлентности. Ñ
/
другой стороны, любое рàзбиение M = {À1,À2,...,Àт} множествà Ì зàдàёт нà этом
множестве отношение, которое можно нàзвàть «входить в одно и то же подмножество рàзбиения». Íетрудно убедиться, что это отношение симметрично, рефлексивно и трàнзитивно, т.е. является отношением эквивàлентности.
© 2011 Ìолчинà Ë.È.
12 Ìолчинà Ë.È. ÝÓÌÊ Ìодели дàнных и системы упрàвления бàзàми дàнных
Îтношение нàзывàется отношением нестрогого порядкà и обознàчàется символом « », если оно рефлексивно, àнтисимметрично и трàнзитивно. Îтношение нàзывàется отношением строгого порядкà и обознàчàется символом «<», если оно àнтирефлексивно, àнтисимметрично и трàнзитивно. Äля числовых множеств отношениями нестрогого порядкà являются известные отношения «меньше или рàвно», «больше или рàвно», отношениями строго порядкà -«меньше» или «больше».
Îтношения порядкà определяют некоторый порядок рàсположения элементов множествà, нà котором они зàдàны, другими словàми позволяют срàвнивàть элементы множествà по некоторому признàку. Ìножество нàзывàется упорядоченным, если любые двà его элементà срàвнимы, и чàстично упорядоченным в противном случàе.
8. Ôункции и их свойствà.
Ïонятие «функции» является одним из основополàгàющих в мàтемàтике. Â дàнном случàе подрàзумевàются прежде всего функции, отобрàжàющие одно конечное множество объектов в другое конечное множество.
Îпределение функции.
Ïусть f – отношение из À в Â, тàкое что
Òàкое свойство отношения нàзывàется однознàчностью, или функционàльностью, à сàмо отношение нàзывàется функцией из À в Â и обознàчàется следующим обрàзом:
или
Åсли
то обычно используется префикснàя формà зàписи:
Åсли |
то à нàзывàют àргументом, à b – знàчением функции. |
ЗАМЕЧАНИЕ ––––––––––––––––––––––––––
Âообще, всякому отношению R из À в
можно сопостàвить
(тотàльную) функцию
(этà функция нàзывàется хàрàктеристической функцией отношения полàгàя:
Ïусть |
тогдà |
облàсть определенияфункции: 
© 2011 Ìолчинà Ë.È.
Òеоретический рàздел |
13 |
|
|
облàсть знàчений функции: 
Åсли
то функция нàзывàется тотàльной, à если
– чàстичной.
Ñужением функции |
нà множество Ì с À нàзывàется функция |
определяемàя следующим обрàзом: |
|
Äля тотàльной функции |
. |
Ôункция |
нàзывàется функцией n àргументов, или n - |
местной функцией. |
|
.
1.1.2Ïонятия мàтемàтической логики
Ïрезентàция: Ëекция - Ïонятия мàтемàтической логики
1.1.3Îсновные понятия реляционной àлгебры
Îсновнàя идея реляционной àлгебры состоит в том, что коль скоро отношения являются множествàми, то средствà мàнипулировàния отношениями могут бàзировàться нà трàдиционных теоретико-множественных оперàциях, дополненных некоторыми специàльными оперàциями, специфичными для бàз дàнных.
1.1.3.1Îсновные понятия реляционной àлгебры
Ðеляционнàя àлгебрà (http://citforum.ru/database/osbd/glava_20.shtml)
Îсновнàя идея реляционной àлгебры состоит в том, что коль скоро отношения являются множествàми, то средствà мàнипулировàния отношениями могут бàзировàться нà трàдиционных теоретико-множественных оперàциях, дополненных некоторыми специàльными оперàциями, специфичными для бàз дàнных.
Ñуществует много подходов к определению реляционной àлгебры, которые рàзличàются нàбором оперàций и способàми их интерпретàции, но в принципе, более или менее рàвносильны. Ìы опишем немного рàсширенный нàчàльный вàриàнт àлгебры, который был предложен Êоддом. Â этом вàриàнте нàбор основных àлгебрàических оперàций состоит из восьми оперàций, которые делятся нà двà клàссà - теоретико-множественные оперàции и специàльные реляционные оперàции. Â состàв теоретико-множественных оперàций входят оперàции:
∙объединения отношений;
© 2011 Ìолчинà Ë.È.
14Ìолчинà Ë.È. ÝÓÌÊ Ìодели дàнных и системы упрàвления бàзàми дàнных
∙пересечения отношений;
∙взятия рàзности отношений;
∙прямого произведения отношений.
Ñпециàльные реляционные оперàции включàют:
∙огрàничение отношения;
∙проекцию отношения;
∙соединение отношений;
∙деление отношений.
Êроме того, в состàв àлгебры включàется оперàция присвàивàния, позволяющàя сохрàнить в бàзе дàнных результàты вычисления àлгебрàических вырàжений, и оперàция переименовàния àтрибутов, дàющàя возможность корректно сформировàть зàголовок (схему) результирующего отношения.
1.1.Îбщàяинтерпретàцияреляционныхоперàций
Åсли не вдàвàться в некоторые тонкости, которые мы рàссмотрим в следующих подрàзделàх, то почти все оперàции предложенного выше нàборà облàдàют очевидной
ипростой интерпретàцией.
∙Ïри выполнении оперàции объединения двух отношений производится отношение, включàющее все кортежи, входящие хотя бы в одно из отношенийоперàндов.
∙Îперàция пересечения двух отношений производит отношение, включàющее все кортежи, входящие в обà отношения-оперàндà.
∙Îтношение, являющееся рàзностью двух отношений включàет все кортежи, входящие в отношение - первый оперàнд, тàкие, что ни один из них не входит
вотношение, являющееся вторым оперàндом.
∙Ïри выполнении прямого произведения двух отношений производится отношение, кортежи которого являются конкàтенàцией (сцеплением) кортежей первого и второго оперàндов.
∙Ðезультàтом огрàничения отношения по некоторому условию является отношение, включàющее кортежи отношения-оперàндà, удовлетворяющее этому условию.
©2011 Ìолчинà Ë.È.
Òеоретический рàздел |
15 |
|
|
∙Ïри выполнении проекции отношения нà зàдàнный нàбор его àтрибутов производится отношение, кортежи которого производятся путем взятия соответствующих знàчений из кортежей отношения-оперàндà.
∙Ïри соединении двух отношений по некоторому условию обрàзуется результирующее отношение, кортежи которого являются конкàтенàцией кортежей первого и второго отношений и удовлетворяют этому условию.
∙Ó оперàции реляционного деления двà оперàндà - бинàрное и унàрное отношения. Ðезультирующее отношение состоит из одноàтрибутных кортежей, включàющих знàчения первого àтрибутà кортежей первого оперàндà тàких, что множество знàчений второго àтрибутà (при фиксировàнном знàчении первого àтрибутà) совпàдàет со множеством знàчений второго оперàндà.
∙Îперàция переименовàния производит отношение, тело которого совпàдàет с телом оперàндà, но именà àтрибутов изменены.
∙Îперàция присвàивàния позволяет сохрàнить результàт вычисления реляционного вырàжения в существующем отношении ÁÄ.
Ïоскольку результàтом любой реляционной оперàции (кроме оперàции присвàивàния) является некоторое отношение, можно обрàзовывàть реляционные вырàжения, в которых вместо отношения-оперàндà некоторой реляционной оперàции нàходится вложенное реляционное вырàжение.
1.2. Çàмкнутость реляционной àлгебры и оперàция переименовàния
Êàк мы говорили в предыдущей лекции, кàждое отношение хàрàктеризуется схемой (или зàголовком) и нàбором кортежей (или телом). Ïоэтому, если действительно желàть иметь àлгебру, оперàции которой зàмкнуты относительно понятия отношения, то кàждàя оперàция должнà производить отношение в полном смысле, т.е. оно должно облàдàть и телом, и зàголовком. Òолько в этом случàе будет действительно возможно строить вложенные вырàжения.
Çàголовок отношения предстàвляет собой множество пàр <имя-àтрибутà, имя-доменà>. Åсли посмотреть нà общий обзор реляционных оперàций, приведенный в предыдущем подрàзделе, то видно, что домены àтрибутов результирующего отношения однознàчно определяются доменàми отношений-оперàндов. Îднàко с именàми àтрибутов результàтà не всегдà все тàк просто.
Íàпример, предстàвим себе, что у отношений-оперàндов оперàции прямого произведения имеются одноименные àтрибуты с одинàковыми доменàми. Êàким был бы зàголовок результирующего отношения? Ïоскольку это множество, в нем не должны содержàться одинàковые элементы. Íо и потерять àтрибут в результàте недопустимо. À это знàчит, что в этом случàе вообще невозможно корректно выполнить оперàцию
© 2011 Ìолчинà Ë.È.
16 Ìолчинà Ë.È. ÝÓÌÊ Ìодели дàнных и системы упрàвления бàзàми дàнных
прямого произведения.
Àнàлогичные проблемы могут возникàть и в случàях других двуместных оперàций. Äля их рàзрешения в состàв оперàций реляционной àлгебры вводится оперàция переименовàния. Åе следует применять в любом случàе, когдà возникàет конфликт именовàния àтрибутов в отношениях - оперàндàх одной реляционной оперàции. Òогдà к одному из оперàндов снàчàлà применяется оперàция переименовàния, à зàтем основнàя оперàция выполняется уже безо всяких проблем.
 дàльнейшем изложении мы будем предполàгàть применение оперàции переименовàния во всех конфликтных случàях.
1.3. Îсобенности теоретико-множественных оперàций реляционной àлгебры
Õотя в основе теоретико-множественной чàсти реляционной àлгебры лежит клàссическàя теория множеств, соответствующие оперàции реляционной àлгебры облàдàют некоторыми особенностями.
Íàчнем с оперàции объединения (все, что будет говориться по поводу объединения, переносится нà оперàции пересечения и взятия рàзности). Ñмысл оперàции объединения в реляционной àлгебре в целом остàется теоретико-множественным. Íо если в теории множеств оперàция объединения осмысленнà для любых двух множествоперàндов, то в случàе реляционной àлгебры результàтом оперàции объединения должно являться отношение. Åсли допустить в реляционной àлгебре возможность теоретико-множественного объединения произвольных двух отношений (с рàзными схемàми), то, конечно, результàтом оперàции будет множество, но множество рàзнотипных кортежей, т.е. не отношение. Åсли исходить из требовàния зàмкнутости реляционной àлгебры относительно понятия отношения, то тàкàя оперàция объединения является бессмысленной.
Âсе эти сообрàжения приводят к появлению понятия совместимости отношений по объединению: двà отношения совместимы по объединению в том и только в том случàе, когдà облàдàют одинàковыми зàголовкàми. Áолее точно, это ознàчàет, что в зàголовкàх обоих отношений содержится один и тот же нàбор имен àтрибутов, и одноименные àтрибуты определены нà одном и том же домене.
Åсли двà отношения совместимы по объединению, то при обычном выполнении нàд ними оперàций объединения, пересечения и взятия рàзности результàтом оперàции является отношение с корректно определенным зàголовком, совпàдàющим с зàголовком кàждого из отношений-оперàндов. Íàпомним, что если двà отношения "почти" совместимы по объединению, т.е. совместимы во всем, кроме имен àтрибутов, то до выполнения оперàции типà соединения эти отношения можно сделàть полностью совместимыми по объединению путем применения оперàции переименовàния.
Çàметим, что включение в состàв оперàций реляционной àлгебры трех оперàций
© 2011 Ìолчинà Ë.È.
Òеоретический рàздел |
17 |
|
|
объединения, пересечения и взятия рàзности является очевидно избыточным, поскольку известно, что любàя из этих оперàций вырàжàется через две других. Òем не менее, Êодд в свое время решил включить все три оперàции, исходя из интуитивных потребностей потенциàльного пользовàтеля системы реляционных ÁÄ, дàлекого от мàтемàтики.
Äругие проблемы связàны с оперàцией взятия прямого произведения двух отношений. Â теории множеств прямое произведение может быть получено для любых двух множеств, и элементàми результирующего множествà являются пàры, состàвленные из элементов первого и второго множеств. Ïоскольку отношения являются множествàми, то и для любых двух отношений возможно получение прямого произведения. Íо результàт не будет отношением! Ýлементàми результàтà будут являться не кортежи, à пàры кортежей.
Ïоэтому в реляционной àлгебре используется специàлизировàннàя формà оперàции взятия прямого произведения - рàсширенное прямое произведение отношений. Ïри взятии рàсширенного прямого произведения двух отношений элементом результирующего отношения является кортеж, являющийся конкàтенàцией (или слиянием) одного кортежà первого отношения и одного кортежà второго отношения.
Íо теперь возникàет второй вопрос - кàк получить корректно сформировàнный зàголовок отношения-результàтà? Îчевидно, что проблемой может быть именовàние àтрибутов результирующего отношения, если отношения-оперàнды облàдàют одноименными àтрибутàми.
Ýти сообрàжения приводят к появлению понятия совместимости по взятию рàсширенного прямого произведения. Äвà отношения совместимы по взятию прямого произведения в том и только в том случàе, если множествà имен àтрибутов этих отношений не пересекàются. Ëюбые двà отношения могут быть сделàны совместимыми по взятию прямого произведения путем применения оперàции переименовàния к одному из этих отношений.
Ñледует зàметить, что оперàция взятия прямого произведения не является слишком осмысленной нà прàктике. Âо-первых, мощность ее результàтà очень великà дàже при допустимых мощностях оперàндов, à во-вторых, результàт оперàции не более информàтивен, чем взятые в совокупности оперàнды. Êàк мы увидим немного ниже, основной смысл включения оперàции рàсширенного прямого произведения в состàв реляционной àлгебры состоит в том, что нà ее основе определяется действительно полезнàя оперàция соединения.
Ïо поводу теоретико-множественных оперàций реляционной àлгебры следует еще зàметить, что все четыре оперàции являются àссоциàтивными. Ò. е., если обознàчить через OP любую из четырех оперàций, то (A OP B) OP C = A (B OP C), и следовàтельно, без введения двусмысленности можно писàть A OP B OP C (A, B и C - отношения, облàдàющие свойствàми, требуемыми для корректного выполнения соответствующей
© 2011 Ìолчинà Ë.È.
18 Ìолчинà Ë.È. ÝÓÌÊ Ìодели дàнных и системы упрàвления бàзàми дàнных
оперàции). Âсе оперàции, кроме взятия рàзности, являются коммутàтивными, т.е. A OP B = B OP A.
1.4. Ñпециàльные реляционные оперàции
 этом подрàзделе мы несколько подробнее рàссмотрим специàльные реляционные оперàции реляционной àлгебры: огрàничение, проекция, соединение и деление.
Îперàция огрàничения
Îперàция огрàничения требует нàличия двух оперàндов: огрàничивàемого отношения и простого условия огрàничения. Ïростое условие огрàничения может иметь либо вид (a comp-op b), где à и b - именà àтрибутов огрàничивàемого отношения, для которых осмысленнà оперàция срàвнения comp-op, либо вид (a comp-op const), где a - имя àтрибутà огрàничивàемого отношения, à const - литерàльно зàдàннàя констàнтà.
 результàте выполнения оперàции огрàничения производится отношение, зàголовок которого совпàдàет с зàголовком отношения-оперàндà, à в тело входят те кортежи отношения-оперàндà, для которых знàчением условия огрàничения является true.
Ïусть UNION обознàчàет оперàцию объединения, INTERSECT - оперàцию пересечения, à MINUS - оперàцию взятия рàзности. Äля обознàчения оперàции огрàничения будем использовàть конструкцию A WHERE comp, где A - огрàничивàемое отношение, à comp - простое условие срàвнения. Ïусть comp1 и comp2 - двà простых условия огрàничения. Òогдà по определению:
∙A WHERE comp1 AND comp2 обознàчàет то же сàмое, что и (A WHERE comp1) INTERSECT (A WHERE comp2)
∙A WHERE comp1 OR comp2 обознàчàет то же сàмое, что и (A WHERE comp1) UNION (A WHERE comp2)
∙A WHERE NOT comp1 обознàчàет то же сàмое, что и A MINUS (A WHERE comp1)
Ñиспользовàнием этих определений можно использовàть оперàции огрàничения, в которых условием огрàничения является произвольное булевское вырàжение, состàвленное из простых условий с использовàнием логических связок AND, OR, NOT и скобок.
Íà интуитивном уровне оперàцию огрàничения лучше всего предстàвлять кàк взятие некоторой "горизонтàльной" вырезки из отношения-оперàндà.
Îперàция взятия проекции
Îперàция взятия проекции тàкже требует нàличия двух оперàндов - проецируемого
© 2011 Ìолчинà Ë.È.
Òеоретический рàздел |
19 |
|
|
отношения A и спискà имен àтрибутов, входящих в зàголовок отношения A.
Ðезультàтом проекции отношения A по списку àтрибутов a1, a2, ..., an является отношение, с зàголовком, определяемым множеством àтрибутов a1, a2, ..., an, и с телом, состоящим из кортежей видà <a1:v1, a2:v2, ..., an:vn> тàких, что в отношении A имеется кортеж, àтрибут a1 которого имеет знàчение v1, àтрибут a2 имеет знàчение v2, ..., àтрибут an имеет знàчение vn. Òем сàмым, при выполнении оперàции проекции
выделяется "вертикàльнàя" вырезкà отношения-оперàндà с естественным уничтожением потенциàльно возникàющих кортежей-дубликàтов.
Îперàция соединения отношений
Îбщàя оперàция соединения (нàзывàемàя тàкже соединением по условию) требует нàличия двух оперàндов - соединяемых отношений и третьего оперàндà - простого условия. Ïусть соединяются отношения A и B. Êàк и в случàе оперàции огрàничения, условие соединения comp имеет вид либо (a comp-op b), либо (a comp-op const), где a и b - именà àтрибутов отношений A и B, const - литерàльно зàдàннàя констàнтà, à comp-op - допустимàя в дàнном контексте оперàция срàвнения.
Òогдà по определению результàтом оперàции срàвнения является отношение, получàемое путем выполнения оперàции огрàничения по условию comp прямого произведения отношений A и B.
Åсли внимàтельно осмыслить это определение, то стàнет ясно, что в общем случàе применение условия соединения существенно уменьшит мощность результàтà промежуточного прямого произведения отношений-оперàндов только в том случàе, когдà условие соединения имеет вид (a comp-op b), где a и b - именà àтрибутов рàзных отношений-оперàндов. Ïоэтому нà прàктике обычно считàют реàльными оперàциями соединения именно те оперàции, которые основывàются нà условии соединения приведенного видà.
Õотя оперàция соединение в нàшей интерпретàции не является примитивной (поскольку онà определяется с использовàнием прямого произведения и проекции), в силу особой прàктической вàжности онà включàется в бàзовый нàбор оперàций реляционной àлгебры. Çàметим тàкже, что в прàктических реàлизàциях соединение обычно не выполняется именно кàк огрàничение прямого произведения. Èмеются более эффективные àлгоритмы, гàрàнтирующие получение тàкого же результàтà.
Èмеется вàжный чàстный случàй соединения - эквисоединение и простое, но вàжное рàсширение оперàции эквисоединения - естественное соединение. Îперàция соединения нàзывàется оперàцией эквисоединения, если условие соединения имеет вид (a = b), где a и b - àтрибуты рàзных оперàндов соединения. Ýтот случàй вàжен потому, что (a) он чàсто встречàется нà прàктике, и (b) для него существуют эффективные
© 2011 Ìолчинà Ë.È.
20 Ìолчинà Ë.È. ÝÓÌÊ Ìодели дàнных и системы упрàвления бàзàми дàнных
àлгоритмы реàлизàции.
Îперàция естественного соединения применяется к пàре отношений A и B, облàдàющих (возможно состàвным) общим àтрибутом c (т.е. àтрибутом с одним и тем же именем и определенным нà одном и том же домене). Ïусть ab обознàчàет объединение зàголовков отношений A и B. Òогдà естественное соединение A и B - это спроектировàнный нà ab результàт эквисоединения A и B по A/c и BBC. Åсли вспомнить введенное нàми в конце предыдущей глàвы определение внешнего ключà отношения, то должно стàть понятно, что основной смысл оперàции естественного соединения - возможность восстàновления сложной сущности, декомпозировàнной по причине требовàния первой нормàльной формы. Îперàция естественного соединения не включàется прямо в состàв нàборà оперàций реляционной àлгебры, но онà имеет очень вàжное прàктическое знàчение.
Îперàция деления отношений
Ýтà оперàция нàименее очевиднà из всех оперàций реляционной àлгебры и поэтому нуждàется в более подробном объяснении. Ïусть зàдàны двà отношения - A с зàголовком {a1, a2, ..., an, b1, b2, ..., bm} и B с зàголовком {b1, b2, ..., bm}. Áудем считàть,
что àтрибут bi отношения A и àтрибут bi отношения B не только облàдàют одним и тем
же именем, но и определены нà одном и том же домене. Íàзовем множество àтрибутов {aj} состàвным àтрибутом a, à множество àтрибутов {bj} - состàвным àтрибутом b.
Ïосле этого будем говорить о реляционном делении бинàрного отношения A(a,b) нà унàрное отношение B(b).
Ðезультàтом деления A нà B является унàрное отношение C(a), состоящее из кортежей v тàких, что в отношении A имеются кортежи <v, w> тàкие, что множество знàчений {w} включàет множество знàчений àтрибутà b в отношении B.
Предположим, что в базе данных сотрудников поддерживаются два отношения: СОТРУДНИКИ ( ИМЯ, ОТД_НОМЕР ) и ИМЕНА ( ИМЯ ), причем унарное отношение ИМЕНА содержит все фамилии, которыми обладают сотрудники организации. Тогда после выполнения операции реляционного деления отношения СОТРУДНИКИ на отношение ИМЕНА будет получено унарное отношение, содержащее номера отделов, сотрудники которых обладают всеми возможными в этой организации именами.
2. Ðеляционное исчисление
Предположим, что мы работаем с базой данных, обладающей схемой СОТРУДНИКИ (СОТР_НОМ, СОТР_ИМЯ, СОТР_ЗАРП, ОТД_НОМ) и ОТДЕЛЫ (ОТД_НОМ, ОТД_КОЛ, ОТД_НАЧ), и хотим узнать имена и номера сотрудников, являющихся начальниками отделов с количеством сотрудников больше 50.
Åсли бы для формулировки тàкого зàпросà использовàлàсь реляционнàя àлгебрà, то мы
© 2011 Ìолчинà Ë.È.
