メールアドレスをmysqlテーブルに保存するのに最も正しいフィールドタイプとサイズを探しています。
最初は varchar 255 を検討していましたが、255 は多すぎるか少なすぎると思います。有効な電子メール アドレスをすべてキャッチできる平均サイズはどれくらいですか?
メールアドレスをmysqlテーブルに保存するのに最も正しいフィールドタイプとサイズを探しています。
最初は varchar 255 を検討していましたが、255 は多すぎるか少なすぎると思います。有効な電子メール アドレスをすべてキャッチできる平均サイズはどれくらいですか?
RFC 5321によると、順方向パスと逆方向パスの長さは最大256文字であるため、電子メールアドレスの長さは最大254文字です。255文字を使用しても安全です。
SMTPの関連規格であるRFC5321およびRFC5322は、アドレスがローカル部分とドメインで構成されることを指定しています。さらに、それらの最大サイズはそれぞれ64オクテットと253オクテットであると述べていますが、句読点を含む順方向パスと逆方向パスによってさらに256オクテットの制限が課せられます(実際には254オクテット)。
そのために必要なのはそれだけです。
エンタープライズWebアプリケーションの標準は、長さが255のvarcharです。
varchar(255)
ここでは、VARCHAR 255を使用するのがおそらく最良のアイデアです。各電子メールアドレスにさらに数バイトを与えることで、何も失われることはありません。また、255は、適切な電子メールアドレスを切断しないようにするのに十分な大きさです。
さて、varchar(255)は私にとっての標準です。そして、私はそれが電子メールを保存するための良いアプローチだと思います。
varcharフィールドを使用する必要があります。
これにより、サイズは重要ではなくなります(インデックスを作成していない場合)。