char和varchar是一樣的字符型,
不同在于,varchar比char更靈活,精確,且不占內存空間,
當你取同樣的字符時(shí),char會(huì )在該字符后面加上空格,
而varchar則只取得這個(gè)字符,比如有字段5,用varchar從該字段
中取aa時(shí),你取得的是"aa",如果用char,則取得的是"aa ",
char會(huì )在后面用空格補齊5個(gè)字段。
所以,varchar比char更精確,但,varchar的速度卻比char慢。
因為char是直接取得全部,而varchar是精確的去取得你要的字符。
char因為要直存直取查詢(xún)速度較快,而varchar因為要精確獲取你的字符查詢(xún)速度較慢。
對于varchar和char的選擇,一般性的指導原則是,對于最大長(cháng)度<=4的字符串,使用char(nchar); 對于最大長(cháng)度大于20的字符串,使用varchar(nvarchar)。對于4~20之間的字符串,可以根據自己情況定。對于大多數情形,使用varchar會(huì )更好。
聯(lián)系客服