在MySQL中,bigint是一種整數(shù)類型。如果在創(chuàng)建表的時候使用bigint但不指定長度,MySQL就會默認為bigint(20)。這種情況下,bigint的取值范圍為-9223372036854775808到9223372036854775807。
如果在創(chuàng)建表時指定了長度,例如bigint(10),那么這個bigint字段就只能存儲范圍為-9223372036854775808到9223372036854775807中的10位數(shù)字。如果超出了這個范圍,則會出現(xiàn)“Out of range value for column”的錯誤。
CREATE TABLE test_table ( id BIGINT, name VARCHAR(20) );
在上面的代碼中,雖然沒有指定id的長度,但是MySQL會默認設(shè)置為bigint(20)。如果希望id只存儲10位數(shù)字,那么可以將代碼修改為:
CREATE TABLE test_table ( id BIGINT(10), name VARCHAR(20) );
值得注意的是,如果對于一個只存儲正整數(shù)的bigint字段,可以將長度設(shè)置為unsigned,從而擴大存儲范圍,例如bigint(20) unsigned。
總的來說,在MySQL中使用bigint時,需要根據(jù)實際情況指定長度,以避免數(shù)據(jù)超范圍,同時可以通過unsigned來擴大范圍。