INT(1) și INT(2) în Mysql Range și Limit to StoreData? (Programare, Php, Mysql)

Nimesh Vagadiya a intrebat.
a intrebat.

În Mysql :

INT(1) = 2147483647 și Stocare 4 octeți,

atunci ce se întâmplă cu INT(2) = ? și stocarea ? byte…

Am folosit în INT(1) o valoare mai mare de 2147483647, dar nu funcționează! De asemenea, am folosit în INT(2) aceeași valoare, dar nu funcționează? De ce?

Soluția?

Comentarii

  • posibil duplicat al semnificației MySQL INT –  > Por Álvaro González.
4 răspunsuri
Ronak Vyas

Specificatorul opțional al lățimii de afișare este aplicabil numai atunci când se utilizează zerofill și nu are nimic de-a face cu dimensiunea internă (în octeți) a tipului de date întreg. Aceasta este întotdeauna de 4 octeți.

Această lățime de afișare opțională poate fi utilizată de aplicații pentru a afișa valori întregi cu o lățime mai mică decât lățimea specificată pentru coloană, prin adăugarea de spații la stânga. (Adică, această lățime este prezentă în metadatele returnate cu seturile de rezultate. Dacă este utilizată sau nu este la latitudinea aplicației).

Iată [un link] (http://dev.mysql.com/doc/refman/5.5/en/numeric-type-attributes.html)

Exemplu pentru mai multe

drop table if exists tablename;

create table tablename ( columnname int(4) unsigned zerofill not null default 0 );

insert into tablename (columnname) values (123),(456),(1234);

select * from nume de tablă;

OutPut

0123

0456

1234

Niet the Dark Absol

Numărul din paranteză reprezintă numărul de cifre returnate de câmp. Puteți introduce orice număr într-un INT(1), dar veți obține doar un număr cuprins între 0 și 9.

Comentarii

  • Explicați pe scurt cu un exemplu –  > Por Nimesh Vagadiya.
Devart

INT în MySQL este întotdeauna un număr de 4 octeți.

Sintaxa tipului INT este INT(M), unde M indică lățimea maximă de afișare; dar nu toți clienții MySQL acceptă această valoare.

Comentarii

  • Dar INT(2) cu mai mult de 2147483647 această valoare, nu funcționează, de ce?  > Por Nimesh Vagadiya.
  • INT: Intervalul semnat este de la -2147483648 la 2147483647. Intervalul fără semn este de la 0 la 4294967295. –  > Por Devart.
  • Aruncați o privire la răspunsul lui Alepac, aveți nevoie de un alt tip de date. –  > Por Devart.
Alepac

Ar trebui să folosiți un BIGINT pentru a obține 8 octeți (Consultați Tipuri de numere întregi). Numărul din paranteză indică doar lățimea maximă de afișare (a se vedea Atributele tipurilor numerice)

Tags:,