MySQL中資料型別(char(n)、varchar(n)、nchar(n)、nvarchar(n)的區別)
char(n)和varchar(n)的區別:
在這裡我們可以清楚的看到他們表面的區別就是前面是否有var,在這裡解釋一下var是什麼意思,var代表“可變的”的意思
下面看個例子:
char(4)//char代表的是字元的意思,這在Java中學過,一個漢字代表一個字元,2個位元組;一個英文代表一個字元,一個位元組。而這裡char(n),(除了它,其餘三個都是如此)n是代表位元組數,現在我們假如儲存‘abcd’(4個位元組,所以可以儲存),再假如儲存‘中國你好’(8個位元組,所以不能儲存),再假如儲存‘ab’(由於是有四個位元組,而現在ab只佔兩個位元組,所以用兩個空格補上後面的兩個位元組,所以資料庫的資料為‘ab ’)
varchar(4)//同樣我們以上面的例子舉例,假如儲存‘abcd’(4個位元組,所以可以儲存),再假如儲存‘中國你好’(8個位元組,所以不能儲存),再假如儲存‘ab’(由於是有四個位元組,而現在ab只佔兩個位元組,然而varchar(n)是由var開頭的,資料是可變的,所以不用像char(4),用空格補位元組的方法,而是可以直接省略空格,所以資料庫的資料還是‘ab’)
nchar(n)和nvarchar(n)
同樣我們先弄清楚以n開頭的資料型別是什麼意思,已n開頭表示此字元是unicode編碼的格式,不是以n開頭的自然不是unicode編碼格式。我們在前面說過,括號裡面的n是代表位元組數,而在這裡,由於是unicode編碼格式,所以n代表2n個位元組數,同樣以上面的例子舉例:
nchar(4)//既然是unicode編碼格式並且不是可變的,所以總共可以儲存2*4=8個位元組,我們現在假如儲存‘abcd’(由於是隻佔四個位元組,所以在資料庫中的資料為‘abcd ’),假如儲存‘中國你好’(則完全可以存放)
nvarchar(4)//既然是unicode編碼且為可變的,所以儲存‘abcd’(在資料庫中的資料為‘abcd’,不會再補空格)
最後,總結一下,var代表可變的,n開頭代表是unicode編碼。
相關文章
- 面試官:MySQL 中 varchar(n) 中 n 最大取值為多少?面試MySql
- 360N7對比N6 Pro的區別對比 60N7和360N6 Pro哪個好?
- MySQL中CHAR和VARCHAR區別MySql
- MySQL資料型別操作(char與varchar)MySql資料型別
- 資料庫char varchar nchar nvarchar,編碼Unicode,UTF8,GBK等,Sql語句中文前為什麼加N(一次線上資料儲存亂碼排查)資料庫UnicodeSQL
- NTMySQL中varchar和char型別的區別heeMySql型別
- 輸入N,再輸入N個數,N
- Dynamics CRM實體系列之1:N、N:1以及N:N關係
- n*n的乘法口訣表
- 11.2.0.3 :PRVG-11134 : Interface "n.n.n.n" on node "racnode1" is not able to..
- MySQL 中 VARCHAR 最大長度及 CHAR 和 VARCHAR 的區別MySql
- N皇后和N皇后2
- 2022-07-17:1、2、3...n-1、n、n、n+1、n+2... 在這個序列中,只有一個數字有重複(n)。 這
- [20210624]find -mtime +N N -N的時間範圍問題.txt
- 訊號與槽N對N
- [20210625]find -mtime +N N -N時間問題補充.txt
- [20210626]find -mtime +N N -N時間問題補充.txt
- 計算2的N次冪n 可輸入,n為自然數
- eventlet 的 spawn_n 和 spawn 有什麼區別?
- varchar和char的區別
- 關於宏定義 Bin(n),LongToBin(n),LongToBin(0x##n##L)
- 求N!
- N 皇后
- n^k
- n+p與n^6+p^6
- MySQL 分組排序後 → 如何取前N條或倒數N條MySql排序
- React 4 種狀態型別及 N 種狀態管理React型別
- Oracle 中varchar2 和nvarchar2區別Oracle
- C(Y,n)一元n次方的構造法
- FBL5N、FBL3N、 FBL1N ALV新增欄位顯示
- ASE160N08-ASEMI低壓N溝道MOS管ASE160N08
- ASE180N08-ASEMI低壓N溝道MOS管ASE180N08
- CSS perspective(n)CSS
- 51,N皇后
- N35
- 9.18n
- Leetcode每日一題:52.N-Queens II(N皇后Ⅱ)LeetCode每日一題
- 資料結構丨N叉樹資料結構