char為定長字符串類型,用來存儲固定長度的文本字符;varchar為變長字符串類型,用來存儲長度不固定的文本字符。
正確答案是:A和D。
分析如下:
1. **CHAR 類型**:
- **定長字符串類型**:CHAR 是定長的,無論存儲的字符串實際長度是多少,都會占用固定的存儲空間。例如,定義為 CHAR(10) 的字段,無論存儲的字符串是 "abc" 還是 "abcdefghij",都會占用 10 個字符的空間。
- **適用場景**:適用于存儲長度固定的字符串,如身份證號碼、固定格式的代碼等。
2. **VARCHAR 類型**:
- **變長字符串類型**:VARCHAR 是變長的,存儲的字符串長度可變,僅占用實際字符長度所需的空間外加一個或兩個字節(jié)的長度信息。例如,定義為 VARCHAR(10) 的字段,存儲 "abc" 只會占用 3 個字符的空間加上長度信息。
- **適用場景**:適用于存儲長度不固定的字符串,如名稱、描述等。
總結(jié):
- CHAR 是定長字符串類型,適合固定長度的數(shù)據(jù)存儲。
- VARCHAR 是變長字符串類型,適合長度可變的數(shù)據(jù)存儲。