質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

DB2

DB2(IBM Database2)は、IBMのリレーショナルデータベース管理システム製品です。 UNIXとWindows、IBM社のメインフレームOS用が用意されており、 幅広いプラットフォームに対応しています。

Q&A

解決済

2回答

1721閲覧

自然キーと代理キーの違いについて

yuh_yo

総合スコア15

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

DB2

DB2(IBM Database2)は、IBMのリレーショナルデータベース管理システム製品です。 UNIXとWindows、IBM社のメインフレームOS用が用意されており、 幅広いプラットフォームに対応しています。

0グッド

0クリップ

投稿2020/07/07 11:59

データベースについて質問させていただきます。
自然キーと代理キーとはどのようなものを指すのでしょうか?
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2020/07/07 12:03

あなたのいうキーとはなんのことでしょうか。 キーボード?w
guest

回答2

0

ベストアンサー

追記

定義について諸説あるようですので、
この回答のコメント欄での議論も十分ご確認ください

元の回答

自然キー

エンティティが本来持つ属性からなる主キー(都道府県名など)

代理キー

主キーではない候補キー

ただし、出典元の書籍には次のような記載があります

参考:
情報処理技術者試験では、
サロゲートキー代用キーもしくは代用のキーと言っている。
しかし、開発の現場では代理キー代替キーと言うこともある。
また、サロゲートキーを使った場合の元の主キーは、
平成 20 年度の問題では代替キーとしていたが、
平成 22 年度の問題では代理キー(alternate key) に改めている。
しかし、先に説明した通り、
代理キー代替キー = サロゲートキーと使う場合があるので
代理キー代替キー代用キーの定義が迷走している状況である。

出典: 情報処理教科書 データベーススペシャリスト 2018年版(ITのプロ46 三好康之)|翔泳社の本

代理キーの例としては、
都道府県名が主キーとして定義された場合の県庁の住所などがそれにあたります
(この例は誤りであるとする定義もあります、コメント欄参照)
また、都道府県テーブルのレコードに連番の ID を割り当て、主キーとして定義したときの
都道府県名もそれにあたります

投稿2020/07/07 12:23

編集2020/07/08 05:43
y_shinoda

総合スコア3272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sazi

2020/07/07 14:35

「代理キー=主キーではない候補キー」というのには違和感があります。 自然キーと代理キーは何れも主キーになり得ますし、スーパーキーの一部である候補キーとして扱うのは変です。
y_shinoda

2020/07/07 14:57 編集

例の書き方が説明としてあまり適切でなかったので書き直しました ちなみに例は書籍からではなく僕が考えて書いています 上記の書籍によると、 候補キーであるかどうかは、 「主キーになれるかどうか」という点で判断し、 代理キーであるかどうかは、 「今、主キーとして定義されているかどうか」という点で判断するように 解説されていますね
sazi

2020/07/07 15:22 編集

代理キーは自然キーの代わりに敢えて作成するキーですから、判断するようなものじゃないです。 判断する場面があるとすると、解析するような場合とか。
y_shinoda

2020/07/07 15:37

書籍のハシラに興味深い記載を見つけたので、追記してみました
sazi

2020/07/07 23:00

ナチュラルキーとサロゲートキーでいいじゃないか、と思う。 いや、呼称じゃなくて、説明。 その本以外の文献にも目を通された方が良いと思います。
sazi

2020/07/08 01:03

> 都道府県名が主キーとして定義された場合の県庁の住所などがそれにあたります いや、違うでしょ。住所は変更があるものです。
y_shinoda

2020/07/08 05:03

主キーもそうであるように、 変更があっても一意性が保たれれば定義に該当するのではないかと考えていますが、 これは違うのでしょうか? 今のところの僕からはこれ以上の知識は出てきません、 ぜひコメントではなく回答欄から回答を投稿にて 包括的に解説をお願いします
sazi

2020/07/08 05:17 編集

ナチュラルキーは変更されるものですが、サロゲートキーは変更がないものです。 サロゲートキーの一番の目的はそこにあるのです。
sazi

2020/07/08 05:27 編集

粘着と取られてしまったかもしれませんが、目的は情報の是正なのです。
y_shinoda

2020/07/08 05:28

もちろん理解しています、ただ、僕はこれ以上の答えを持っていないですし、 回答投稿できるので投稿していただいた方が・・僕より詳しそうですし・・
sazi

2020/07/08 05:39 編集

解決積みでないなら回答したかもしれませんが、解決してしまっているので。 それに、回答するにしても、y_shinodaさん程詳細にはしないので、情報量として見劣りする内容になってしまいますし。 もう終わりにしますので、大丈夫です。 ただ、反応して頂けたのは嬉しかったです。
yuh_yo

2020/07/08 09:18

申し訳ございません。 皆さん、本当にありがとうございます。
guest

0

調べればわかることを質問していました。
自分の配慮のなさ、理解不足に痛感しています。
本当に申し訳ございません。

指摘いただいた方、回答してくださった方、関わった方
本当にありがとうございます。

投稿2020/07/07 12:18

編集2020/07/08 09:21
yuh_yo

総合スコア15

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2020/07/07 12:21 編集

質問の仕方というか、本当にこれを聞きたかったんでしょうか? ググればすぐにわかると思うんですが。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問