9
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【データ設計】一般的なユーザ情報のデータ型を考えてみた。

Posted at

#はじめに
データ設計時に頭を悩ますのは、データ型の最大値と最小値でしょう。
特にユーザ情報に関わる情報はしっかり調べる必要があります。
「メールアドレスの最小値は?」「名前の最大値は?」
と考える前に、一度こちらの記事に目を通しておくとハッピーになれるかもしれません。(なれるとは言っていなry)

目次

  • 姓名
  • フリガナ
  • メールアドレス
  • パスワード
  • 電話番号
  • 携帯電話
  • 住所
  • 郵便番号
  • 企業名、団体名

姓名 (2〜50文字)

最小値は「姓(1文字)」+「名(1文字)」の2文字でしょう。
※調べてみても世界最短の姓名は見つかりませんでした

次に最大値を考えてみましょう。
日本落語の「寿限無」では 111文字です。
ギネス世界記録における最長の名前を調べると 746文字でした。
ありとあらゆる名前をカバーするのは諦めましょう。

なので人気ソーシャルメディアを比べてみました。(2021年10月時点)

SNS 最小値 最大値
Twitter 1文字 50文字
Instagram 1文字 30文字
LINE 1文字 20文字
TikTok 1文字 30文字

最大値はバラバラですね。最小値は全て1文字というのは驚きでした。

結論、2文字〜50文字が妥当ではないでしょうか。

フリガナ (2〜450文字)

姓名は2文字〜50文字を踏まえて考えます。
漢字一文字で最も長い読み方ですが、
常用漢字では「承(うけたまわ)る」や「慮(おもんぱか)る」の5文字。
日本漢字検定協会が定めたものでは「蔘(ちょうせんにんじん)」9文字です。
なので最大値は450文字です。
※蔘(ちょうせんにんじん)さんと名付ける方がいるかは不明

最小値は、漢字1文字に対して1文字でしょう。
「津偉(つい)」さんや「安威(あい)」さんが実在するらしいです。

メールアドレス (6文字~254文字)

メールアドレスの長さはRFC5321 4.5.3にて規定されています。
結論。メールアドレス全体の最大値は254文字です。
ちなみに以下のルールもあります。

  • ローカル部(@より前)の最大は、64文字
  • ドメイン(@より後)の最大は、253文字

最小値は、ローカル部の1文字とドメインの「◯.jp」の4文字なので、@を合わせて6文字でしょうか。

パスワード(40文字〜128文字)

パスワードを平文のままDBに保存するケースはないと思われますので、システムで利用するハッシュ関数の16進桁数分をDBで確保すればよいです。

ハッシュ 長さ
MD5 32文字
SHA1 40文字
SHA256 64文字
SHA224 56文字
SHA512 128文字
※MD5はセキュリティ上、脆弱なので32文字は除外しています。

ちなみに

一般的なパスワードのルールについてもまとめてみました。
情報処理推進機構(IPA)には、以下が安全なパスワードであると明記されています。

  • 最低でも8文字以上の文字数で構成
  • 数字や記号を混ぜる
  • 大文字と小文字の両方を入れる

もし入力チェックを行う場合は、上記のルールも実装するように意識してください。

電話番号 (10文字)

一般固定電話は(0XX‐XXX‐XXXX)の10桁です。
ちなみに「0 + 市外局番(1~4桁) + 市内局番(1~4桁) + 加入者番号(4桁)」の構成です。

ちなみに

特番ダイアル旧一般固定電話など、電話番号にも種類があるっぽい。

携帯電話 (11桁)

携帯電話/PHS/ポケベルは(0X0-YYYY-ZZZZ)の11桁です。

国際電話 (12桁)

国際電話は、「81-X0-YYYY-ZZZZ」の12桁になります。
頭の81は日本の国番号です。フランスに電話したい場合は33となります。

衛星電話 (13桁)

衛生電話というものもあり、長距離フェリーや電話線がない場所、離島でのみ使用されているみたいです。こちらは13桁でした。

住所 (152文字)

最長の住所を調べてみようとしましたが断念。
※住所+特定の所属名称などを考慮する必要があるため調査困難。また海外では短縮名も存在するなど。

世界の大手オンラインショッピングサイトであるAmazonで調べたところ、各入力フォームの合計値は152文字でした。
市区町村(60文字) + 丁目・番地・号(60文字) + 建物名/会社名(16文字) + 部屋番号(16文字)

郵便番号 (7桁)

昔は3桁や5桁で運用していたが、1998年2月2日から7桁で運用が始まったらしい。

企業名/団体名(137文字)

世界一長い社名は、こちらの137文字です。(2021年10月時点)

9
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?