自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MySQL字符串各列類型的區(qū)別

數(shù)據(jù)庫 MySQL
MySQL數(shù)據(jù)庫的各個列類型都有所區(qū)別,下文對這些區(qū)別進行了分類整理,供您參考,如果您感興趣的話,不妨一看。

MySQL字符串的列類型很多,下面為您整理了MySQL字符串各列類型的區(qū)別,希望可以讓您對MySQL字符串類型有更深入的認(rèn)識。

1.

首先CHAR, VARCHAR, TEXT和BINARY, VARBINARY, BLOB的區(qū)別:

HAR, VARCHAR, TEXT稱為非二進制字符串;

BINARY, VARBINARY, BLOB稱為二進制字符串;

二進制字符串和非二進制字符串的區(qū)別是:
二進制字符串包含的是字節(jié)字符串,非二進制字符串包含的是字符字符串;

后者可以定義字符集,前者不可以;

而且排序和比較前者基于列值字節(jié)的數(shù)值值,后者則根據(jù)字母順序進行排序或比較;

BINARY類似與CHAR類型,但是保存二進制字符串而不是非二進制字符串;

VARBINARY類似與VARCHAR類型,但是保存二進制字符串而不是非二進制字符串;
同樣類似的BLOB對應(yīng)TEXT類型(相應(yīng)的有TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB和TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT)

2.

CHAR和VARCHAR相同之處:

都可以定義字符串的長度,如CHAR(M), VARCHAR(M);

不同之處:

CHAR(M)定義的列的長度為固定的,M取值可以為0~255之間,當(dāng)保存CHAR值時,在它們的右邊填充空格以達(dá)到指定的長度。當(dāng)檢索到CHAR值時,尾部的空格被刪除掉。在存儲或檢索過程中不進行大小寫轉(zhuǎn)換。

VARCHAR(M)定義的列的長度為可變長字符串,M取值可以為0~65535之間,(VARCHAR的***有效長度由***行大小和使用的字符集確定。整體***長度是65,532字節(jié))。VARCHAR值保存時只保存需要的字符數(shù),另加一個字節(jié)來記錄長度(如果列聲明的長度超過255,則使用兩個字節(jié))。VARCHAR值保存時不進行填充。當(dāng)值保存和檢索時尾部的空格仍保留,符合標(biāo)準(zhǔn)SQL。

注意:MySQL 數(shù)據(jù)庫的varchar類型在4.1以下的版本中的***長度限制為255,其數(shù)據(jù)范圍可以是0~255或1~255(根據(jù)不同版本數(shù)據(jù)庫來定)。在 MySQL5.0以上的版本中,varchar數(shù)據(jù)類型的長度支持到了65535,也就是說可以存放65532個字節(jié)的數(shù)據(jù),起始位和結(jié)束位占去了3個字 節(jié),也就是說,在4.1或以下版本中需要使用固定的TEXT或BLOB格式存放的數(shù)據(jù)可以使用可變長的varchar來存放,這樣就能有效的減少數(shù)據(jù)庫文 件的大小。

CHAR和VARCHAR***的不同就是一個是固定長度,一個是可變長度。由于是可變長度,因此實際存儲的時候是實際字符串再加上一個記錄字符串長度的字節(jié)(如果超過255則需要兩個字節(jié))

如果分配給CHAR或VARCHAR列的值超過列的***長度,則對值進行裁剪以使其適合。如果被裁掉的字符不是空格,則會產(chǎn)生一條警告。如果裁剪非空格字符,則會造成錯誤(而不是警告)并通過使用嚴(yán)格SQL模式禁用值的插入。

由于BINARY和VARBINARY分別與CHAR和VARCHAR對應(yīng),因此兩者的區(qū)別也和CHAR和VARCHAR的區(qū)別類似。

但是注意VARBINARY定義的M值范圍為0<=M<=255

3. VARCHAR和TEXT類型的區(qū)別:

TEXT類型不需要指定M值,其他方面與VARCHAR都類似:比如存儲的是可變長度,即不夠的部分不需要右邊空格填充;等等。

TEXT與VARCHAR類似,實際需要保存字符串本身外加兩個字節(jié)保存字符串的實際長度。

看下表容易理解上面講述的區(qū)別:

字符串類型的存儲需求(M為***長度,L實際存儲字符串的長度)

 

 

 

【編輯推薦】

mysql查詢大小寫問題

MySQL多個條件判斷示例

MYSQL查詢重復(fù)記錄的方法

教您如何實現(xiàn)MySQL全文查詢

MySQL查詢結(jié)果條數(shù)編號示例

責(zé)任編輯:段燃 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-11-26 13:40:58

MySQL空字符串

2010-09-13 15:12:26

sql server字

2010-03-09 15:15:02

Python字符串類型

2023-01-11 16:49:13

MySQL數(shù)據(jù)庫

2010-11-26 09:51:54

MySQL字符串

2010-10-12 11:13:51

2010-11-26 10:43:48

MySQL分割字符串

2021-03-08 08:57:00

Go 字符串測試

2010-09-28 09:49:48

SQL字符串

2013-12-02 09:43:29

字符串編程

2010-05-21 17:22:22

2023-03-06 23:05:32

MySQL字符串函數(shù)

2009-02-24 15:39:27

字符串比較函數(shù)函數(shù)

2010-09-28 09:42:25

sql語句

2010-09-09 11:48:00

SQL函數(shù)字符串

2010-11-26 10:14:40

MySQL repla

2009-09-04 10:26:09

Java和C#字符串類

2010-05-19 14:39:12

MySQL連接字符串

2010-11-26 11:08:20

MySQL字符串

2010-07-14 16:48:02

Perl字符串比較
點贊
收藏

51CTO技術(shù)棧公眾號