ホームページ >データベース >mysql チュートリアル >Mysql の tinyint(1) と tinyint(4) の違いは何ですか
String 型: varchar(M) の場合、M は格納できる最大文字数です。フィールド文字列、つまりフィールド長です。設定によっては、挿入する値がフィールド設定の長さを超えると、エラー プロンプトが表示される可能性があります。プロンプトが表示されない場合、挿入されたデータは、事前に定義されたフィールドの長さに合わせて自動的に切り詰められる場合もあります。分野。 varchar(5) のようなものはすべて、格納される文字列の長さが 5 を超えることができないことを意味します。
数値列タイプ: 長さ修飾子は最大幅を示し、フィールドの物理的なストレージとは関係がありません。つまり、tinyint(1) と tinyint(4) がsigned 格納範囲は-128~127(符号なしの場合は0~255)です。
注: 符号付きのデフォルト範囲 (-128~127)、デフォルトの長さは 4.
# #zerofill が使用されている場合、実際の長さが指定された表示長に達しない場合、前が 0 で埋められます。
MySQL のデータ型では、tinyin は符号付きかどうかに関係しており、符号付きの値の範囲は -128 ~ 127、符号なしの値の範囲は 0 ~ 255 です。括弧内の数字は格納される値とは関係がなく、場合によっては表示幅のみが異なります。
#2 テスト
#文字列型の名前フィールドが に設定されている場合に何が起こるか長さが 5 を超えています ?
tinyint 型 (符号付き) の age フィールドが範囲 (-128 ~ 127) の外に設定された場合はどうなりますか?
#1 バイト = 8 ビット、1 バイトで表現できるデータの最大長は 2 の 8 乗 11111111 です。コンピュータでも #-128 ~ 127
1.BIT[M]
ビット フィールド タイプです。M は各値の桁数を表し、範囲は 1 です。 M が無視された場合、デフォルトは 1
2.TINYINT[(M)] [UNSIGNED] [ZEROFILL] M のデフォルトは 4
(小さい整数) になります。符号付きの範囲は -128 ~ 127 です。符号なしの範囲は 0 ~ 255 です。
3. BOOL、BOOLEAN
は TINYINT(1) の同義語です。値 0 は false とみなされます。ゼロ以外の値は true とみなされます。
4.SMALLINT[(M)] [UNSIGNED] [ZEROFILL] M のデフォルトは、6
の小さな整数です。符号付きの範囲は -32768 ~ 32767 です。符号なしの範囲は 0 ~ 65535 です。
5.MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL] M のデフォルトは 9
中程度の大きさの整数です。符号付きの範囲は -8388608 ~ 8388607 です。符号なしの範囲は 0 ~ 16777215 です。
6. INT[(M)] [UNSIGNED] [ZEROFILL] M のデフォルトは 11
通常サイズの整数です。符号付きの範囲は -2147483648 ~ 2147483647 です。符号なしの範囲は 0 ~ 4294967295 です。
7.BIGINT[(M)] [UNSIGNED] [ZEROFILL] M のデフォルトは 20
big integer です。シンボリック間隔は -9223372036854775808 ~ 9223372036854775807 です。符号なしの範囲は 0 ~ 18446744073709551615 です。
注: ここでの M は、データベースに格納される特定の長さを表すものではありません。以前は、int(3) は 3 つの長さの数値、int(11) のみを格納できると誤解していました。は長さ 11 の数値を格納しますが、これは完全に間違っています。以上がMysql の tinyint(1) と tinyint(4) の違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。