1. Introducción
Entero tipo, el tipo entero, MySQL soporta los tipos enteros TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT.
1,1 espacio y alcance
Y el espacio de almacenamiento requerido para cada gama de tipos de enteros de la siguiente manera:
类型 |
byte | mínimo (Firmado) |
máximo (Firmado) |
mínimo (Sin signo) |
máximo (Sin signo) |
TINYINT |
1 | -128 |
127 |
0 |
255 |
SMALLINT |
2 | -32768 |
32767 |
0 |
65535 |
MEDIUMINT |
3 | -8388608 |
8388607 |
0 |
16777215 |
INT |
4 | -2147483648 |
2147483647 |
0 |
4294967295 |
BIGINT |
8 |
|
|
0 |
|
2. INT (11)
2.1 Digital si se debe limitar la longitud?
Identificación del INT (11) NOT NULL AUTO_INCREMENT,
Algunos tipos de construcción de la tabla en la instrucción aparecerá int anterior (11), entonces, ¿qué significa?
Se hace referencia al campo de tipo de número entero de paréntesis, ancho de la pantalla . Esto es diferente del significado de otros tipos de campos. Para los tipos de decimales, que representa el número total de números. Para campo de caracteres, que es el número máximo de caracteres que se pueden almacenar, por ejemplo, VARCHAR (20) puede almacenar 20 caracteres.
La anchura máxima no afecta a la visualización se puede almacenar en esa columna. INT (5), y INT (11) puede almacenar el mismo valor máximo. INT Incluso dispuestas (20 es) no destinada a ser capaz de almacenar 20 dígitos (BIGINT), o sólo el INT valor máximo almacenado en la columna.
Ejemplos
Crear una tabla temporal:
CREAR demo_a TABLA TEMPORAL ( INT id (11) NOT NULL AUTO_INCREMENT, un INT (1) NOT NULL, b INT (5) NOT NULL, PRIMARY KEY ( `id`) )
Insertar más de la "longitud" de las figuras:
demo_a INSERT INTO (a, b) VALORES (255, 88888888);
Ver Resultados: El número no se establece la longitud
mysql> SELECT * FROM demo_a; + ---- + ----- + ---------- + | Identificación | a | b | + ---- + ----- + ---------- + | 1 | 255 | 88888888 | + ---- + ----- + ---------- + 1 fila en el conjunto (0,03 seg)
2.2 Digital expresar lo que quiere decir eso?
Cuando la columna se establece en UNSIGNED ZEROFILL tiempo, INT (11) tiene sentido, por lo que representa como digitales Si desea almacenar menos de 11 caracteres, entonces estas cifras se rellena con ceros a la izquierda.
Nota : por defecto ZEROFILL como sin firmar, y por lo tanto no pueden almacenar números negativos.
Ejemplos
Crear una tabla temporal: b columna se establece en UNSIGNED ZEROFILL
CREAR demo_a TABLA TEMPORAL ( INT id (11) NOT NULL AUTO_INCREMENT, un INT (11) NOT NULL, b INT (11) UNSIGNED ZEROFILL NOT NULL, PRIMARY KEY ( `id`) );
Inserte valores:
demo_a INSERT INTO (a, b) VALORES (1, 1);
Resultados: columna de la izquierda usando una longitud de relleno 0 b
mysql> SELECT * FROM demo_a; + ---- + --- + ------------- + | Identificación | a | b | + ---- + --- + ------------- + | 1 | 1 | 00000000001 | + ---- + --- + ------------- + 1 fila en el conjunto (0,18 seg)
3. Referencias
tipo entero : https://dev.mysql.com/doc/refman/5.6/en/integer-types.html
Lo que hace int (11) medios en MySQL? : https://www.virendrachandak.com/techtalk/mysql-int11-what-does-it-means/