SQL Serverの場合:タイプBIT
の最大8列 タイプCHAR(1)
の各列は、1バイト内に格納できます。 1バイトを使用します。
一方、BIT
列には2つの値(0 =false、1 =true)を指定することも、値をまったく指定しない(NULL)こともできます-CHAR(1)
任意の文字値を持つことができます(はるかに多くの可能性)
つまり、実際には次のようになります。
- 本当にtrue/false(yes / no)フィールドが必要ですか?その場合:
BIT
を使用します - 2つ以上の可能な値を持つものが必要ですか?
CHAR(1)
を使用してください
何万もの列がない限り、パフォーマンスの観点からは、大きな違いはないと思います。そしてもちろん、BIT
を使用します 1バイトに最大8列を格納できると便利です。しかし、繰り返しになりますが、これらの列が数個、数十個ある「通常の」データベースの場合、実際には大きな違いはありません。 ニーズに合った列タイプを選択してください -パフォーマンスについて過度に心配しないでください.....