私はSQLを初めて使い、マルチプレイヤーゲームのアカウント情報を格納するテーブルを作成しています。私は何が最も効率的な方法は、多くのデータを格納するのだろうかと思います。これらの3つの列のために推奨SQLの種類と長さ
は、私が思うに、私はすでにそれを考え出した:
username: VARCHAR(20)
password: VARBINARY(16) for MD5-Hashes
email: VARCHAR(70)
あなたはこれについてどう思いますか?
これ以外にも、私は実際には予測できないより柔軟なデータ(セーブゲームデータ)がたくさんあります。このデータをTEXT型のフィールドにXMLデータとして保存することは賢明でしょうか?それともPHPを使って保存する方がいいですか?
ありがとうございました。 ロブ
、同様に非常に遅くなるSELECT/INSERT/UPDATEを含む問い合わせ、ほとんどのDBは、文字を加えた長さの必要数を使用しています。一部のデータベースでは、255未満の場合は1バイトの長さが使用されます。したがって、小さい長さを指定すると何も購入されません(*この長さを*適用する場合を除く)。パスワードは長さが変わらないのでバイナリを使うべきです。 – maaartinus
タグ空間効率と併せてXMLを言及することは禁じられています。データを複数のテーブルに構造化してスペースを気にしたくない場合は、[JSON](http://www.json.org)などの無駄の少ないものを使用する必要があります。 – maaartinus