ない。通常、ルックアップテーブルでtinyintを使用します
-
比較では照合を使用するため、char(1)は少し遅くなります
-
混乱:AとP以上に拡張すると
-
文字を使用すると、タイプを追加するときに制限があります。最後のポイントを参照してください。
-
私が見たすべてのシステムには、レポートなど、複数のクライアントがあります。 AとPは、各クライアントコードでアクティブとパッシブに解決する必要があります
-
拡張性:もう1つのタイプ(「Suspended」の場合は「S」)を追加して、ルックアップテーブルに1つの行を追加したり、多くのコードや制約を変更したりできます。そして、クライアントコードも
-
メンテナンス:ロジックは、データベース制約、データベースコード、クライアントコードの3か所にあります。ルックアップと外部キーを使用すると、1つの場所に配置できます
-
列挙型は移植性がありません
単一の文字または列挙型を使用することのプラス面
注:関連するDBA.SE Enumに関するMySQLの質問 があります 。そこでもルックアップテーブルを使用することをお勧めします。