ひろゆき)Tweet使用するデータ型を統一するこのようにきめ細やかなデータ型が用意されているのに対し、データベース設計者はどのデータ型を採択するかを決めなければなりません。Northwindの社員コードは数値型を使っていますが、一般にはコード類を文字型に統一する方が多いと思います。その場合でも社員コードなど桁数が決まっているものはchar(8)というように固定長文字列タイプを使い、社員名などのように桁数がデータにより異なるカラムはvarchar(20)というように可変長文字列タイプを使うのが普通でしょう。表2:Northwindのデータ型使い分けと筆者プラン表2の左欄は、Northwindで採択されているデータ型です。格納されるデータによりbitやmoney、smallint、int、realなど様々なデータ型が使われています。このデータベースは「見本」なので、意図的に様々なデータ型を使っているのかも知れません。実際のデータベース設計では、使用するデータ型をもっと統一した方がよいと思います。ServerとOracleの両ケースで記載しています。著者はできるだけデータ型を統一した方が開発・メンテナンスが楽ちんという考えで、データの種類によりデータ型を表3のように統一しています。Server:Decimal/Oracle:Number)を使います。/Oracle:Nvarchar2)一本で勝負です。カラム名とデータ型との関係も固定化し、コードや区分という名称が付けば必ず文字型、フラグという名称が付けば必ず数値型というように、そのアプリケーション内ではカラム名とデータ型との関係は統一します。このようなルールを定めておけば、あるときはdecimal、あるときはintというように神経を使う必要がありません。ディスクやメモリ容量が飛躍的に大きくなった現代において、わずかなデータサイズを惜しんでばらばらにするよりは、統一によりミスを少なくする方が勝ると考えています。最後に今回は、データベース設計に取り掛かる際に最初にぶつかる問題である、「日本語を使うか?」「データ型を使い分けるか?」という2点をテーマにしました。このあたりは、人によって様々な考え方があるところです。こんなふうに考えている人もいるんだなと思っていただければ結構だと思います。2006年東証マザーズ、2014年東証第一部、2019年東証スタンダード上場。Browser」を開発。PM」など、独創的なアイデアの製品を次々とリリース。システム設計とドキュメント」を刊行。「日本のITの近代化」と「日本のITを世界に」の2つのテーマをライフワークに掲げている。Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。ITがお届けするポッドキャストです。