« 2007年10月 | メイン | 2008年03月 »

2008年01月 アーカイブ

2008年01月03日

データベース用語和英対応表

6~7年前に買ったSQLの入門書を、捨てる前に読み返している。この入門書を使って1回SQLを勉強したのだが、実際に使うことが無かったため、全く身に付かず、歳のせいで記憶にも残っていないのだ。実際、MySQLを触りながら復習しようとして、mysqlを起動すると、"select * from (テーブル名);"以外の文はそらでは全く書けなかった。

従って、SQLの入門書とMySQLのマニュアル(MySQL info)とを見ながらSQLを試しているのだが、SQLの入門書が日本語でMySQLのマニュアルが英語であり、筆者にデータベースの基礎知識がないため、日本語と英語の対応が取れない用語がいくつか発生した。

そこで、出くわしたデータベース用語の日本語と英語の対応表を作ることにした。

日本語英語
階層型データベースhierarchical database
ネットワーク型データベースnetwork structure database
リレーショナルデータベースrelational database, RDB
データ定義言語Data Definition Language, DDL
データ操作言語Data Manipulation Language, DML
データ制御言語Data Control Language, DCL
主キーprimary key
候補キーcandidate key
代理キー(代替キー)alternate key
複合キー(連結キー)composite key
外部キーforeign key
非キー属性non-key attribute
正規化normalization
非正規化denormalization
非正規形non-first normal form. NF2
第1正規形first normal form, 1NF
第2正規形second normal form, 2NF
第3正規形third normal form, 3NF
ボイス-コッド正規形Boyce-Codd normal form, BCNF
第4正規形forth normal form, 4NF
第5正規形fifth normal form, 5NF
射影-結合正規形projection-join normal form, PJNF
関係代数relational algebra
集合演算set operation
関係演算relational operation
sum
difference
product
quotient
直積(デカルト積)direct product(Cartesian product)
選択selection
射影projection
結合join
交差結合cross join(Cartesian join)
等結合equi-join
自然結合natural join
内部結合inner join
外部結合outer join
左外部結合left outer join
右外部結合right outer join
自己結合self-join
相関サブクエリーcorrelated subquery
集計関数aggregate function
参照整合性制約referential integrity constraint
一意性制約unique constraint
(2008/1/4 更新)

続きを読む "データベース用語和英対応表" »

2008年01月05日

第3正規形とBoyce-Codd正規形

久々にSQLの入門書を読んで復習しているが、これまでRDBの第2正規形や第3正規形をよく理解していなかったので、この機会にきちんと理解しようとしている。
この入門書には簡単な例だけで正規形の正確な意味が書かれていないので、ネットで調べながら勉強していると、ボイス-コッド正規形というものがあることを知った。

第1~3正規形とボイス-コッド正規形の意味を非常に浅く理解した後、ボイス-コッド正規形は必ず第3正規形の条件を満たすというのを読んで、理解するのに結構な時間がかかったので、忘れないように、自分なりの理解で図を書いてみた。

第2正規形とは、「主キーの値が決まれば、他の列の値が決まる」と書いてあることがあるが、私の理解では「主キーまたはいずれかの候補キーの値が全て決まらない限り、他の列の値はどれも決まらない」と書かないと意味が取れないと思う。
第3正規形は、第2正規形でかつ「候補キーでない列の値よって他の列の値が決まることがない」と理解した。
つまり第2正規形は主キーに対して制約がある形、第3正規形は非キー属性にも制約がある形と言えるのではないだろうか。

Boyce-Codd正規形は、「属性間の自明でない依存関係X→Yの全てについて、Xは候補キーかそれを含む集合」ということなので、「候補キーを含まないキーによって定まる属性はない」と理解したが、これだけでは第2~3正規形との関係がよくわからないので、図を書いて考えてみる。

2_3_bcnf.png

上の図において、A~Eは属性(列)で、ABが主キー、BCは(主キー以外の)候補キーであり、第1正規形である(第1正規形の条件を満たす)とする。
ABの値が決まればD,Eの値が決まるので、AB→D、AB→Eの依存関係がある。

B→Dの依存関係があると、候補キーの値が揃わなくても非キー属性の値が決まってしまうので、第2正規形でない。
D→Eの依存関係があると、候補キー以外の属性(非キー属性)によって決まる非キー属性があることになるので、第3正規形でない。(または、AB→D、D→Eで非キー属性が推移的に候補キーに従属するので、第3正規形でない)
C→Dの依存関係は、非キー属性によって決まる非キー属性があることにはならないので、第3正規形の条件を破らないが、候補キーを含まないキーによって定まる属性があることになるので、Boyce-Codd正規形の条件は満たさない。

続きを読む "第3正規形とBoyce-Codd正規形" »

About 2008年01月

2008年01月にブログ「Weblog on mebius.tokaichiba.jp」に投稿されたすべてのエントリーです。過去のものから新しいものへ順番に並んでいます。

前のアーカイブは2007年10月です。

次のアーカイブは2008年03月です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.35