




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、校對(duì)集,collate校對(duì)集指的是字符之間的比較關(guān)系!如:a B c 三個(gè)字母如何排序?在 ASCII 碼下的排序?yàn)椋築 a c在mysql命令客戶端下,使用 order by 對(duì)結(jié)果排序,看結(jié)果:順序?yàn)?a-B-c 忽略了大小寫!但是這種順序可以被校對(duì)集改變:利用 show collation; 語(yǔ)句,可以查看所有的校對(duì)集校對(duì)集,依賴于字符集校對(duì)集:指的是,在某個(gè)字符集下,字符的排序關(guān)系應(yīng)該是什么,稱之為校對(duì)集!再創(chuàng)建一個(gè)utf8_bin校對(duì)集表,再對(duì) a,B,c 進(jìn)行排序:create table collate_2 (c varchar(10) charset=utf8 collate=
2、utf8_bin;再插入同樣的三個(gè)字母:insert into collate_2 values(a),(B),(c);排序結(jié)果如下:典型的后綴:_bin :二進(jìn)制編碼層面直接比較_ci :忽略大小寫比較(大小寫不敏感)_cs:大小寫第三比較MYSQL數(shù)據(jù)類型(列類型,字段類型)三大類:數(shù)值,字符串,日期時(shí)間數(shù)值整數(shù)型類型字節(jié)最小值(有符號(hào)/無(wú)符號(hào))最大值(有符號(hào)/無(wú)符號(hào))tinyint1-128/0127/255smallint2-32768/032767/65535mediumint3-8388608/08388607/16777215int/intege4-2147483648/0214
3、7483647/4294967295bigint8-9223372036854775808/09223372036854775807/18446744073709551615如何選擇:通過(guò)業(yè)務(wù)邏輯判斷!常見(jiàn)的是 int , tinyint !mysql的整型,有php整型不具備的概念:1:無(wú)符號(hào),只能表示整數(shù)或0。那么最大的整數(shù)會(huì)很大默認(rèn)是有符號(hào)!可通過(guò)整型的 unsigned 選項(xiàng), int unsigned 設(shè)置整型無(wú)符號(hào)2:顯示寬度顯示寬度不決定整數(shù)的范圍,而決定在顯示出該數(shù)之后,如果寬度不夠,則采用前導(dǎo)零補(bǔ)齊。此時(shí)需要 zerofill 來(lái)設(shè)置如:create table type_i
4、nt_3 (num int unsigned zerofill);insert into type_int_3 values (0);insert into type_int_3 values (1000);insert into type_int_3 values (1000000);可見(jiàn),無(wú)符號(hào),默認(rèn)的寬度是10,因此全都使用0來(lái)補(bǔ)齊可以設(shè)置整型的顯示寬度! int(M) 即可! M 最大為 255!M的值不決定范圍,只決定顯示寬度!create table type_int_4 (num int(30) unsigned zerofill);insert into type_int_4
5、values (0);insert into type_int_4 values (1000);insert into type_int_4 values (1000000);注意:如果走出了寬度范圍,則直接顯示!額外的,mysql中,沒(méi)有布爾型!但存在 Boolean 這個(gè)關(guān)鍵字,表示 tinyint(1)典型的,0表示假,1表示真小數(shù)類型類型存儲(chǔ)空間(字節(jié))最小值(理論)最大值(理論)FLOAT4-3.402823466E+383.402823466E+38DOUBLE8-1.7976931348623157E+3081.7976931348623157E+308DECIMAL變長(zhǎng),大致是
6、每9個(gè)數(shù)字,采用4個(gè)字節(jié)存儲(chǔ)。整數(shù)和分?jǐn)?shù)分開(kāi)計(jì)算M,最大是65D,最大是30默認(rèn)是10,2-(65個(gè)9)(+65個(gè)9)單精度、雙精度默認(rèn)的有效位數(shù):在定義浮點(diǎn)數(shù)時(shí),典型的需要指明其有效位數(shù),和小數(shù)位數(shù)float(M,D);double(M,D);M:所有的有效位數(shù)D:其中的小數(shù)位數(shù)以上兩個(gè)值,決定一個(gè)浮點(diǎn)數(shù)的有效范圍!典型的浮點(diǎn)數(shù):float(10,2);注意:浮點(diǎn)數(shù)是近似值,不是精確值!如果一個(gè)數(shù),很大,接近最大值,可能會(huì)出錯(cuò)一旦出現(xiàn)精確數(shù)據(jù)(小數(shù))需要保存,則要用到定點(diǎn)數(shù)。定點(diǎn)數(shù):小數(shù)點(diǎn)是固定的!decimal,與定義浮點(diǎn)數(shù)一樣,也有有效位數(shù)與小數(shù)位數(shù)的概念:decimal(M,D);不是
7、數(shù)的形式存儲(chǔ),類似于字符串的形式存儲(chǔ)!注意:關(guān)于小數(shù)1:支持科學(xué)計(jì)數(shù)法2:同樣支持 unsigned,無(wú)符號(hào)3:同樣支持 zerofill字符串類型類型最大長(zhǎng)度備注char255Char(M),M字符數(shù)varchar65535,但需要1-2個(gè)保存信息,同時(shí)由于記錄的限制,因此最大為65532編碼不同字符數(shù)不同:Gbk<=32767Utf8<=21845tinyText,text,mediumText,longTextL + n。L為最大長(zhǎng)度28+1, 216+2, 224+3, 232+4定義時(shí),通常不用指定長(zhǎng)度,可以自己計(jì)算。enum1、2。枚舉選項(xiàng)量(65535)內(nèi)部存儲(chǔ)是整型
8、表示。字段值只能是某一個(gè)set1、2、3、4、8。元素?cái)?shù)量:64binary,varbinary,blobBinary(char),varbinary(varchar),blob(text) 做類比二進(jìn)制數(shù)據(jù)(字節(jié)而非字符)char,最基本(定長(zhǎng))的字符串類型用于保存,長(zhǎng)度固定的內(nèi)容!速度快,但是保存變長(zhǎng)數(shù)據(jù)會(huì)浪費(fèi)空間varchar,可變長(zhǎng)度的字符串用于保存長(zhǎng)度可變的數(shù)據(jù)保存變長(zhǎng)數(shù)據(jù)時(shí),節(jié)省空間,處理起來(lái)麻煩些char(L); varchar(L)L,表示每個(gè)數(shù)據(jù)的最大長(zhǎng)度。單位是字符數(shù)(不是字節(jié)數(shù))。L的值不多大都可以,有最大值:1:mysql一條記錄最大值不能超過(guò)65535(255*255
9、)個(gè)字節(jié)(字段的長(zhǎng)度加起來(lái),不能超過(guò)這個(gè)值)2:長(zhǎng)度單位是字符數(shù),與編碼是相關(guān)的 utf8編碼下一個(gè)字符占3個(gè)字節(jié) gbk編碼下一個(gè)字符占2個(gè)字節(jié)采用單字節(jié)編碼測(cè)試下:Latin1;測(cè)試發(fā)現(xiàn),只有一個(gè)字段,而且是單字節(jié)字符集,還是不能是65535,原因是:為什么是65532呢,少了3個(gè)字節(jié):3:由于 varchar 是變長(zhǎng),需要記錄下真實(shí)的數(shù)據(jù)到底有多長(zhǎng)!每個(gè)VARCHAR類型的數(shù)據(jù)還需要額外的1個(gè)或2個(gè)字節(jié)保存真實(shí)數(shù)據(jù)的長(zhǎng)度?。ㄈQ于真實(shí)數(shù)據(jù)的長(zhǎng)度)4:整條記錄還需要一個(gè)字節(jié)來(lái)保存哪些字段為 null但是在使用時(shí),varchar如果超過(guò)255就選擇 text 來(lái)保存!text,文本,不限長(zhǎng)度
10、的字符串該字段,不需要指明長(zhǎng)度,而且也不會(huì)算入到記錄的總長(zhǎng)度內(nèi)!選擇:定長(zhǎng):char變長(zhǎng)較短:255個(gè)字符之內(nèi),使用varchar變長(zhǎng)較長(zhǎng):使用text枚舉,enum,單選需要在定義枚舉類型時(shí),列出哪些是可能的!在處理時(shí),類似字符串型進(jìn)行操作!意義在于:1:限定值的可能性2:速度快,比普通的字符串速度快原因是枚舉型是利用整數(shù)進(jìn)行管理的,采用2個(gè)字節(jié)進(jìn)行管理每個(gè)值,都是一個(gè)整數(shù)標(biāo)識(shí),從第一個(gè)選項(xiàng)開(kāi)始為1,逐一遞增!管理是整數(shù)的形式,速度比普通字符串快!2個(gè)字節(jié),0-65535,因此有 65532 個(gè)選項(xiàng)可以使用!集合,set,復(fù)選類似于 enum 枚舉,定義時(shí),也需要指定其已有值!與字符串相比,
11、優(yōu)勢(shì)是:1:也是采用整數(shù)進(jìn)行管理的!采用位運(yùn)算,從第一位開(kāi)始為1,逐一乘22:每個(gè)集合類型8個(gè)字節(jié),64位,因此可以表示64個(gè)元素注意:站在mysql的角度,盡量多用枚舉和集合! 但是站在php操作的角度,盡量少用?。嫒菪圆睿┤掌跁r(shí)間類型datetime,日期時(shí)間。用于保存大范圍的日期時(shí)間! 在處理時(shí)使用字符串形式進(jìn)行管理create table type_datetime_1 (now datetime);insert into type_datetime_1 values (1234-12-25 12:32:06);timestamp,時(shí)間戳常用的典型時(shí)間 ,從1970-1-1開(kāi)始。占用
12、空間少,而且是以整型的形式管理,但是以字符串形式展示create table type_timestamp_1 (now timestamp);insert into type_timestamp_1 values (2008-8-8 20:08:08);date,日期如果只記錄日期,不記錄時(shí)間采用 date !year,年在保存年份的時(shí)候。采用一個(gè)字節(jié)保存!因此只能表示 1901-2155 年time,時(shí)間除表示時(shí)刻的概念還可以表示時(shí)間跨度!時(shí)間段的概念!create table type_time_1 (len time);insert into type_time_1 values (16:17:20);ins
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中西教育差異
- 2025年醫(yī)療美容行業(yè)基因編輯技術(shù)在美容護(hù)膚中的應(yīng)用報(bào)告
- 2025年醫(yī)療美容消費(fèi)者心理特點(diǎn)與服務(wù)質(zhì)量改進(jìn)案例分析
- 自律互助小組培訓(xùn)
- 原發(fā)性高血壓的防治及護(hù)理
- 業(yè)財(cái)融合培訓(xùn)
- 重癥手足口病的觀察與護(hù)理
- 中班健康活動(dòng)春游策劃與實(shí)施
- 重癥肺炎和急性呼吸衰竭查房
- 中獸醫(yī)培訓(xùn)課件
- 華北理工選礦學(xué)課件03浮選-1浮選基本原理
- 新建ICU鎮(zhèn)痛、鎮(zhèn)靜藥物應(yīng)用幻燈片
- 冠寓運(yùn)營(yíng)管理手冊(cè)正式版
- 2022年珠海市金灣區(qū)體育教師招聘筆試試題及答案
- 畢業(yè)離校學(xué)生證遺失證明
- 智慧停車技術(shù)方案
- 土地整理質(zhì)量評(píng)定表
- 【告知牌】某公司全套重大危險(xiǎn)源告知牌(7頁(yè))
- 中考數(shù)學(xué)復(fù)習(xí)專題二方程與不等式
- 牛津深圳版七年級(jí)下冊(cè)英語(yǔ)作文匯總
- 供應(yīng)商管理庫(kù)存VMI的實(shí)施
評(píng)論
0/150
提交評(píng)論