- PR -

論理削除アプリでの設計について

1
投稿者投稿内容
POTETO
常連さん
会議室デビュー日: 2003/10/06
投稿数: 41
投稿日時: 2006-04-16 13:40
はじめまして。どうぞ宜しくお願いします。

削除フラグを利用して論理削除を行うアプリケーションの
DBを設計する場合、主キーはどのように設計したらよいのでしょうか。

意味のある候補キーでは一意にならないため、
無意味連番のカラムを追加してそれを主キーとしています。

宜しくお願い致します。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-16 13:51
引用:

POTETOさんの書き込み (2006-04-16 13:40) より:

削除フラグを利用して論理削除を行うアプリケーションの
DBを設計する場合、主キーはどのように設計したらよいのでしょうか。


論理削除があろうとなかろうと、主キーの設計は変わらないと思いますが...

「商品型番」などであれば意味があるものですから連番にはできないでしょうけど、
そういった類のものがないのであれば、連番で良いかと思います。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-16 13:53
投稿してから気付いたのですが、会議室を間違われていませんか?
この手の話題は「Database Expert 会議室」の方でされた方が良いでしょう。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
minminnana
大ベテラン
会議室デビュー日: 2004/02/05
投稿数: 246
お住まい・勤務地: 盛岡
投稿日時: 2006-04-16 18:21
論理削除されたデータと削除されていないデータが同一キーで存在するという事でしょうか。

引用:
無意味連番のカラムを追加してそれを主キーとしています。



で問題ないのでしょうが、論理削除されていないデータを読む機会が多いのでしょうから、それを読みやすい形にしたほうがよさそうですよね。(削除フラグもキーに入れちゃうとか?)

問題を取り違えていたらごめんなさい。
まいるどきゃっと
大ベテラン
会議室デビュー日: 2004/08/12
投稿数: 135
お住まい・勤務地: 群馬
投稿日時: 2006-04-17 13:41
削除方法が論理削除か物理削除かどうかは、主キーの設計方法に影響は普通ありません。

引用:

意味のある候補キーでは一意にならないため、
無意味連番のカラムを追加してそれを主キーとしています。


ということでしたら、何の問題もないはずです。

なぜ論理削除では主キーの設計方法を変えなければいけないと思ったのかを書けば、また違った回答が返ってくるかもしれません。
POTETO
常連さん
会議室デビュー日: 2003/10/06
投稿数: 41
投稿日時: 2006-04-18 05:23
じゃんぬねっと様、minminnana様、まいるどきゃっと様
返信どうもありがとうございました。

会議室を間違えて投稿していました。
申し訳ありません。

皆様のおっしゃるとおり、アプリケーションの削除方法で
DBのキー設計が変わるというのはおかしいと思います。
ですが、最終的にいつも連番カラムをキーとしていたので、
本来の候補キーにはインデックスを設定するべきかなど考えてしまいました。
そこで、このような質問を投稿しました。

minminnana様の「削除フラグもキーに入れる」なども勉強になりました。

ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)