mysql關於char和varchar型別的區別

2021-09-27 02:36:16 字數 385 閱讀 6750

在mysql中,字串型別中的char屬於有固定長度的字串型別;二varchar型別屬於可變長度的字串型別;如何理解固定長度和可變長度呢?

固定長度指:當長度設定為4時,長度是固定的;當實際值只有1位時,會自動用空格補足4位;

可變長度指:當長度設定為4時,長度是隨著實際值為改變,最長為4;當實際值只有1位位元組時,則值會占用1位的位元組的長度,同時再加上1位記錄長度的位元組,即總長為1+1=2;

因此在儲存空間上:char占用4位的儲存空間;但是在檢索時,會自動去掉空格符;因此處理效率相對較快;

而varchar型別;雖然節省了空間,但是多了一步計算記錄的長度;因此處理效率相對char來說會慢一些;

總結:儲存很短的資訊或者考慮效率方面無需考慮儲存空間時,建議使用char型別;

關於char 和char 的不同

在c語言中,我們經常用如下兩種方式來表示字串 char string hello world char string hello world 可能有時還會用這種方式 char string 11 hello world 問題來了,他們一樣嗎?不一樣的話有什麼不同?我用如下 來做測試 include ...

關於char 和char 的個人理解

今天白天練習一些程式設計題遇到了乙個問題,是 寫好後總是莫名出現段錯誤,再三檢查語法和演算法,百思不得其解。之後突然想到,可能是把char 和char搞混了。原本應該是 char a hello 寫成了char a hello 在這之前我一直以為兩者沒有區別,然後仔細的思考了一番,發現了問題的所在。...

關於 檔案讀寫 和 char

char d new char length f.read d,length for int k 0 kcout d 0 for int j 0 j return 0 這裡 要求 text.txt中 有 1 2 3 數 對其 求和 求平均值 思路是 先將 檔案的直接 利用 read 讀到 記憶體中 ...