0

id現在、MySQL データベースにいくつかのテーブルがあり、フィールドが型であると宣言しています ( 65535 [長さ 5] までしかないSMALLINT(6)ため、これは正しいですか)。ここで、整数型の下で、範囲が正の値から 65535 まで増加することSMALLINTを読みました。フィールドの属性を具体的に に変更すると、データベースにどのような影響がありますか? また、 からに移動するときに問題はありますか?UNSIGNEDidUNSIGNEDSMALLINTMEDIUMINT

私のデータベースの種類はMyISAMです。

4

2 に答える 2

1

SMALLINTからに切り替えても問題ありMEDIUMINTません。データが失われることはありません。

MySQLの通常の整数は、下限と上限の間の任意の数値にすることができます。符号付き整数の場合、下限は負の数であり、上限は正の数です。符号付きのASMALLINTは、-32768〜32767の範囲で指定できます。ただし、符号なし整数は正の整数のみです。下限はゼロで、上限は65535です。

ただし、私は通常INTIDに使用します。IDフィールドの上限を高くして、決して到達しないようにしたいと思います。

于 2011-03-13T09:34:58.437 に答える
0

型を使用する際の主な問題UNSIGNEDは、負の数になる算術演算を実行すると、代わりに大きな数になることです。ただし、IDの場合、これが問題になる可能性は低く、メモリ使用量を少し減らすためにIDを使用することがよくあります。

データ型を拡張しても通常は問題が発生しないため、 SMALLINTthenを使用してからに変更しても問題は考えられません。MEDIUMINT

于 2011-03-13T09:37:15.743 に答える