Drupal 7、Wordpress(非常に古いバージョン)、Pythonベースのカスタムアプリケーションなど、いくつかの有名なCMSのSQLダンプを参照しています。
これらのすべてのダンプには、整数の代わりに文字列フラグを持つデータが含まれていました。例えば、ポストの状態は次のように表現されたpublished
、closed
またはinherit
よりむしろ1
、2
または3
。
データベースの設計の経験はかなり限られており、単純なSQLを使用したことは一度もありませんが、このようなデータには数値/整数フラグを使用する必要があることを常に教えられました。tinyint
たとえば、データベース内で消費するスペースがの場合よりもはるかに少ないことは明らかですvarchar(9)
。
だから私は何が欠けていますか?これはデータストレージとデータの冗長性の浪費ではありませんか?これらの列が文字列ではなく整数を使用している場合、ブラウジング、検索、およびインデックス作成が少し速くなりませんか?
char
s?どれだけ非効率的!」というCプログラマーの見解 2015