第VIII章データベース理論演習
8.2
満たす機能依存のリストが示され
A | B | C |
---|---|---|
A1 | B1 | C1 |
A1 | B1 | C2 |
A2 | B1 | C1 |
A2 | B1 | C3 |
回答:
些細な依存β∈αので、このようなすべてのタイプのような19種類、そのα->β。
単一の属性:A-> A、B> B、C> C。
双属性的:AB-> A、AB-> B、AB-> AB、AC-> A、AC-> C、AC-> AC、BC-> B、BC-> C、BC-> BC
三属性的:ABC-> A、ABC-> B、ABC-> C、ABC-> AB、ABC-> BC、ABC-> AC、ABC-> ABC。
以下の非自明な依存性、3つの種類があります。
A-> B:各対応する要素Bに対応する要素のようなA-要素、以来
C-> B:同じ要素Bの両方対応で同じ要素のためのC
AC-> B:上記の二つのリリース
全ての要素は存在しない種々の要素の属性が存在している、BにB、非依存機能B、AとCと同じです
A-> Cが満たされていないので、異なるマッピングCと同様に、ある; C-> A同じことが成立しません。
8.3
どのように機能依存してショーを説明するために:
- エンティティは、生徒と講師が存在との間の接触の1セットを設定し、
- 学生と講師が存在との間の接触を設定し、多くのエンティティセット
回答:
- 主キー(学生) - >主キー(インストラクター)と主キー(インストラクター) - >主キー(学生)は、学生とエンティティセットインストラクターとの間の接触の一組を表し、フォーカスの学生はタプルinstuctorにマッピングされた学生の同じ値を表します教師、生徒の同じ値を有するインストラクタータプルが同じ主キーを持たなければならない学生にマッピングされるため講師は、同じ主キー値を有していなければなりません。
- 主キー(学生) - >一つのリンクセットに多くの主キー(講師)は、同じ主キー値が同じ主キー値インストラクターに対応する必要があり、1つの差は、学生との間の関係は、に対応してもよいです学生で表されます同じ講師。
8.9
与えられたデータベーススキーマR(A、B、C)、および関係のRのパターンR、書き込みテスト機能は、B-> Cの依存関係rのSQLクエリで保持します。そして、ライト保証機能依存のSQLアサーションに。帰無仮説は存在しません。
A:試験B-> C異なるB cにマッピングされていない同一の缶を意味成り立ちます。
select b
from r
group by b --通过b进行分类
having count(distinct c) > 1 --查看相同的b映射到c的种类是否大于1
--如果最终b是空集,则说明该函数依赖成立,否则说明不成立
空でないアサーションが生成される場合、それはまた、決意の上記の試験結果によってアサートされます。
create assertion func_b_c check
(
not exists (select b --用not exists进行判定
from r
group by b
having count(distinct c) > 1)
)