1 byte = 8 bits
だから、これは1バイトが1文字しか保持できないことを意味しますか?例えば。:
"16" uses 2 bytes , "9" uses 1 byte , "a" uses 1 byte, "b" uses 1 byte
tiny int
の範囲が0〜255の場合、255文字で保存できるということですか?
のストレージは何ですか
1. tiny int (1)
2. tiny int (2)
range 0-10
はどうなりますか
1バイトには1文字を保持できます。例:各文字のASCII値を参照し、バイナリに変換します。これがその仕組みです。
値255は(11111111)基数2として格納されます。バイナリ変換の詳細については、このリンクにアクセスしてください。 http://acc6.its.brooklyn.cuny.edu/~gurwitz/core5/nav2tool.html
Tiny Intのサイズ= 1バイト(-128〜127)
Int = 4バイト(-2147483648から2147483647)
2 ^ 8 = 256文字。バイナリの文字は一連の8(0または1)です。
|----------------------------------------------------------|
| |
| Type | Storage | Minimum Value | Maximum Value |
| | (Bytes) | (Signed/Unsigned) | (Signed/Unsigned)|
| | | | |
|---------|---------|-------------------|------------------|
| | | | |
| | | | |
| TINYINT | 1 | -128 - 0 | 127 - 255 |
| | | | |
|----------------------------------------------------------|
TINYINT
データ型の構文はTINYINT(M)
です。
M
は最大表示幅を示します(MySQLクライアントがサポートしている場合にのみ使用されます)。
(m)はSELECTステートメントの列幅を示します。ただし、そのフィールドの許容範囲の数値は制御しません。
TINYINTは8ビット整数値であり、BITフィールドは1ビットBIT(1)と64ビット、BIT(64)の間に格納できます。ブール値の場合、BIT(1)はかなり一般的です。
はい、1バイトはASCIIセットの文字(スペースなど)をエンコードします。ただし、文字エンコードに割り当てられたデータユニットでは、実際には最大4バイトが必要になる場合があります。これは、英語だけが文字セットではないためです。また、英語のドキュメントでも、他の言語や文字がしばしば表されます。これらの数は非常に多く、他にも非常に多くのエンコードセットがあります。 BIG-5、UTF-8、UTF-32。現在、ほとんどのコンピューターはこれらの使用を許可し、文字化けしたテキストの量を最小限に抑えています(通常、エンコードセットの欠落を意味します)。これらの可能なエンコードをカバーするには4バイトで十分です。文字ごとのIバイトはこれを許可せず、使用中はASCIIだけでなく、すべてのエンコードで可能な文字ごとに4バイトが大きくなることがよくあります。最後の文字は、機能するか、画面に表示するために1バイトだけが必要な場合がありますが、4バイトがかなり広大なグローバルエンコーディング「ワーク」に配置される必要があります。