メンバーのテーブルのデータ型ですか?

mysqlデータベースのメンバテーブルとスコアテーブルに使用するのに最適なデータ型は何ですか?

私はJavaでホストされているmysqlデータベースに接続するゲームを作成しています。私は各フィールドにどのデータ型を使用するのか不明です。

私が持っているフィールドは次のとおりです。

TABLE tMembers

ID INT(11)
firstName VARCHAR(255)
lastName VARCHAR(255)
email VARCHAR(255)
username VARCHAR(255)
password VARCHAR(255)

TABLE tScores

ID INT(11)
SCORE INT(11)
DATE DATETIME

私はSOのことをいくつか聞いたことがありますが、電子メールはこれより長くなることができないので、 VARCHAR(80)を使用する効率についてグーグル・グーグルで調べます。

名前には、 text よりも varchar が優れています(名前に数字や記号を含めることはできません。

また、 ID については、 INT または INTEGER を使用する必要がありますか?

どんな援助も感謝以上です。

0

1 答え

私はSOのことをいくつか聞いたことがあります。   電子メールとしてVARCHAR(80)を使用する効率は電子メールとしては不可能です   それよりも長い、これは本当ですか?

はい、列をvarchar(x)として定義する場合、その列に保存する値の長さはxより小さくする必要があります。

名前の場合、varcharはテキストよりも優れています(名前には   数字や記号、なぜテキストを使うのはなぜですか?)

varcharには、テキストよりも少ない文字(最大長)が含まれています。使用するmysqlのバージョンによって異なります。例えば5.03+ varcharには65535文字を使用できます。あなたの要件のためには、 "名前"のためのvarchar型は大丈夫でしょう。

IDの場合は、INTまたはINTEGERを使用する必要がありますか?

私の理解では、mysqlのINTとINTEGERは同じです。チェック http://dev.mysql.com/doc/refman/5.0 /en/numeric-types.html そこにあなたが見ることができます:

MySQLは、すべての標準SQL数値データ型をサポートしています。これらのタイプ   正確な数値データ型(INTEGER、SMALLINT、DECIMAL、および   NUMERIC)、および近似数値データ型(FLOAT、REAL、   DOUBLE PRECISION)を選択します。 キーワードINTはINTEGERの同義語です。   キーワードDECとFIXEDはDECIMALの同義語です。

1
追加された
ありがとう、私は私が正しい行にあると思ったが、完全にはわからない。
追加された 著者 Mike,