Microsoft Access 掲示板

コードを意味を持たせない、の意味 / 3

6 コメント
views
4 フォロー
3
名前なし 2023/09/15 (金) 10:45:02 77762@3d5b4

データベースではコードに意味を持たせてはいけない、とききますが

@IT: システムの寿命はコードで決まる!

そのコードが「業務で利用するコード」であるかどうかによります。

それとは別の問題として、有意コードや「後から変更される可能性がある情報」を格納するためのフィールドをテーブルの主キー(個々のレコードを一意に識別するためのインデックス)として定義することは、できるだけ避けた方が良いでしょう。

顧客番号でCA001(Cがカスタマー、Aは顧客の頭文字)としたり

顧客の名前(の頭文字)は、後から変更(改名、または誤って入力された情報の修正)される可能性があります。

請求書番号をCA001-23001(顧客番号と2023の23と発行数)としたりする

同上。

顧客番号とは別に00001、00002といったIDをリレーションにつかい、
顧客番号は文字と同じ扱いにする、などは問題とされませんか?

そういう形でよいと思いますが、それと「[顧客番号]を有意コードとするべきか否か」はあくまで別の問題です。
例えば、もし顧客の名前(の頭文字)が変更されたら、わざわざ[顧客番号]も新たに発行し直したりするのでしょうか。

通報 ...