【Access】Nullを許さないデータ格納法

記事
IT・テクノロジー
Accessのテーブルはこんな感じです。
スクリーンショット 2024-05-17 093034.png

Excelのシートと変わりないですね。でもデータベースは、
スクリーンショット 2024-05-17 093853.png

こんな感じの歯抜けを嫌います。空欄でも情報は情報なので、これだと「I0001のJANコードはNullですよ」ということになっています。Nullというのはなにもない、という意味なのですが、本当になにもないならなにもないはずです(よくわからない笑)。つまり枠をこしらえてしまうとそこにはなにかの情報を入れなくてはならず、Nullというのも立派な情報なので、本来I0001のJANコードは地球上に存在しないのにテーブル上ではI0001のJANコード=Nullとなってしまうわけです。これはクエリを組む際など、いろいろ問題が出てきます。SQLも複雑になりますね。

じゃあどうすりゃいいんだよ、という話ですね。
スクリーンショット 2024-05-17 094907.png

こうします。

たとえばI0001のJANコードを入力する場合は、縦に足します。これでJANコードのない商品には枠を設けずに済みます。空欄ができないので無駄なデータなし、速度と安定性も向上します。

ただこの形式だと扱いづらいので、2つ上の画像みたいな作業用のテーブルを用意して、ふつう形式に変換するプログラムも合わせて用意します。

もちろんぜんぶ必須項目ならふつう形式のテーブルで構わないのですが、なかなかそうはいかないですよね。

Accessを学ばれている方は、こういう格納の仕方もあるんだよ、ということを覚えていただければと思います。

変換プログラムはやや面倒なので、もし必要であれば安価でご提供いたしますよ~。


サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す