關(guān)于varchar和char的區(qū)別效率,varchar和char的區(qū)別這個(gè)問題很多朋友還不知道,今天小六來(lái)為大家解答以上的問題,現(xiàn)在讓我們一起來(lái)看看吧!
1、char 和 varchar 固定長(zhǎng)度 (char) 或可變長(zhǎng)度 (varchar) 字符數(shù)據(jù)類型。
2、 char[(n)] 長(zhǎng)度為 n 個(gè)字節(jié)的固定長(zhǎng)度且非 Unicode 的字符數(shù)據(jù)。
3、n 必須是一個(gè)介于 1 和 8,000 之間的數(shù)值。
4、存儲(chǔ)大小為 n 個(gè)字節(jié)。
5、char 在 SQL-92 中的同義詞為 character。
6、 varchar[(n)] 長(zhǎng)度為 n 個(gè)字節(jié)的可變長(zhǎng)度且非 Unicode 的字符數(shù)據(jù)。
7、n 必須是一個(gè)介于 1 和 8,000 之間的數(shù)值。
8、存儲(chǔ)大小為輸入數(shù)據(jù)的字節(jié)的實(shí)際長(zhǎng)度,而不是 n 個(gè)字節(jié)。
9、所輸入的數(shù)據(jù)字符長(zhǎng)度可以為零。
10、varchar 在 SQL-92 中的同義詞為 char varying 或 character varying。
11、 注釋 如果沒有在數(shù)據(jù)定義或變量聲明語(yǔ)句中指定 n,則默認(rèn)長(zhǎng)度為 1。
12、如果沒有使用 CAST 函數(shù)指定 n,則默認(rèn)長(zhǎng)度為 30。
13、 將為使用 char 或 varchar 的對(duì)象被指派數(shù)據(jù)庫(kù)的默認(rèn)排序規(guī)則,除非用 COLLATE 子句另外指派了特定的排序規(guī)則。
14、該排序規(guī)則控制用于存儲(chǔ)字符數(shù)據(jù)的代碼頁(yè)。
15、 支持多語(yǔ)言的站點(diǎn)應(yīng)考慮使用 Unicode nchar 或 nvarchar 數(shù)據(jù)類型以盡量減少字符轉(zhuǎn)換問題。
16、如果使用 char 或 varchar: 如果希望列中的數(shù)據(jù)值大小接近一致,請(qǐng)使用 char。
17、 如果希望列中的數(shù)據(jù)值大小顯著不同,請(qǐng)使用 varchar。
18、 如果執(zhí)行 CREATE TABLE 或 ALTER TABLE 時(shí) SET ANSI_PADDING 為 OFF,則一個(gè)定義為 NULL 的 char 列將被作為 varchar 處理。
19、 當(dāng)排序規(guī)則代碼頁(yè)使用雙字節(jié)字符時(shí),存儲(chǔ)大小仍然為 n 個(gè)字節(jié)。
20、根據(jù)字符串的不同,n 個(gè)字節(jié)的存儲(chǔ)大小可能小于 n 個(gè)字符。
本文分享完畢,希望對(duì)大家有所幫助。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請(qǐng)聯(lián)系刪除!