我舉個(gè)小例子給你簡(jiǎn)單解釋一下。
創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),巫溪網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:巫溪等地區(qū)。巫溪做網(wǎng)站價(jià)格咨詢:13518219792
例:
CREATE TABLE TABLE_1
(
ID INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
// ID列為無符號(hào)整型,該列值不可以為空,并不可以重復(fù),而且自增。
NAME VARCHAR(5) NOT NULL
)
AUTO_INCREMENT = 100;(ID列從100開始自增)
PRIMAPY是主鍵的意思,表示定義的該列值在表中是唯一的意思,不可以有重復(fù)。
UNSIGNED是無符號(hào)的意思,代表該字段沒有正負(fù)。
AUTO_INCREMENT可以理解為自動(dòng)遞增的意思,每增加一條記錄,值會(huì)自動(dòng)加1。(例如在上面的例子中,ID列每增加一條記錄,便會(huì)從100自增) 。
我想通過上面的例子,你應(yīng)該可以理解一些了,不明白再問我。謝謝。
主要的區(qū)別是占用空間和表示范圍
tinyint 占用1字節(jié)
表示非負(fù): 0--255
無符號(hào)表示:-128--127
舉例表示人的年齡就可以用:age tinyint;
smallint 占用2字節(jié)
表示非負(fù):0--2^16-1 既 0到65535
無符號(hào)表示:-2^15--2^15-1
舉例表示烏龜?shù)哪挲g:agewg smallint;
int 占用4字節(jié)
表示非負(fù) 0--2^32-1 既 零到四十二億九千萬
無符號(hào)表示:-2^31--2^31-1
舉例表示恐龍化石年齡:agekl int;
bigint 占用8字節(jié)
表示非負(fù) 0--2^64-1 這已經(jīng)是天文數(shù)字了,能表示 18后面17個(gè)零那么大的數(shù)字
無符號(hào)表示:-2^63--2^63-1
bigint比較占用空間,一般都不用。
舉例表示宇宙年齡:ageyz bigint;
完全手打親!
帶符號(hào)和無符號(hào),顧名思義,就是是否有正負(fù)之分:
比如8為二進(jìn)制,
如果帶符號(hào),需要用1位表示符號(hào)(1表示負(fù)數(shù),0表示正),剩下7位表示數(shù)據(jù).
那么表示范圍是-127---127(包括-0和+0).
如果不帶符號(hào),8位全部表示數(shù)據(jù),
那么表示范圍是
0--256