データ型を持つ e2s という名前のフィールドを作成しましたtinyint。値を保存すると、500に変換され127ます。に変更しましたsmallint。値を格納し500ました。なんで?値を保存するint、tinyint、smallint、mediumintの違いは何ですか。bigint
1096 次
2 に答える
1
http://dev.mysql.com/doc/refman/5.0/en/integer-types.htmlを見てください。TINYINTは 1 バイトのデータのみを保存するため、-128 から 127 までの整数範囲を保存できます。
SMALLINT一方、2 バイトのストレージを使用し、-32768 から 32767 までのはるかに広い範囲を持ちます。
TINYINTまたはSMALLINT列に何を格納しようとしているかに注意してください。たとえば、auto_incrementPK 列をSMALLINTデータ型に設定するのは、その容量を簡単に圧倒する可能性があるため、悪い考えです。
于 2013-09-18T06:00:03.310 に答える