mysql的版本以及欄位中所佔長度以及字元的關係

2021-08-11 05:54:21 字數 1387 閱讀 4378

由於現在使用的mysql的版本都是5.0以上的版本,所以我就介紹5.0以上的版本

1.varchar(n),這個是指能存放的字元的長度,就是不管你輸入的是英文,還是漢字(utf8,gbk),這個時候,你只能往裡面填入n個字元,只不過的是,例如varchar(20),你最多能填入20個字元,如果你填入的20個英文單詞的時候,你此時佔的位元組長度是20,而20個utf8的漢字所佔的位元組則是60個位元組,雖然你們都只能填寫20個字元,而char(20)與varchar(20)的不同的點是,如果你存入的2個英文單詞,varchar的字段只是佔2個位元組,而char的這個欄位則是要占個20位元組,然而在mysql5.0以上的版本中,row的一行是最大位元組是65532(排除頭和尾占用的位元組),是這一行所有列相加的結果。

2.乙個varchar存漢字需要使用三個欄位在utf8和utf8mb4編碼表的情況下。

3.在utf8和utf8mb4中varchar(n),這個n是字元,所見即所得,乙個a是乙個字元,乙個?也是乙個字元,不過就是a這個字元是1個位元組,哈這個字元是3個位元組,而?這個字元是4個位元組表示罷了。

mysql修改表,字段,庫的字符集

1.修改資料庫字符集

alter database db_name default character set character_name

例子:alter database my_database  default character set utf8

2.把錶預設的字符集和所有字元列改為新的字元ji

alter table tb_name convert to character set character_name

例子:alter table test convert to character set utf8

3.只是修改表的預設字符集:

alter table tb_name default character set character_name

例子:alter table test default character set utf8

4.修改欄位的字段集

alter table tb_name change c_name c_name character set character_name(其中c_name位列名,這個列名就是重複的c_name,就是要寫兩遍)

alter table test change name name varchar(20) character set utf8.(修改test表裡面的name欄位的儲存格式是utf8)

5.檢視資料庫編碼

show create database db_name

6.檢視表編碼

show create table tb_name

7.檢視字段編碼:

show full columns from tb_name

如何檢視linux版本 以及其他檢視版本的命令

1.檢視核心版本命令 1 root q1test01 cat proc version linux version 2.6.9 22.elsmp bhcompile crowe.devel.redhat.com gcc version 3.4.4 20050721 red hat 3.4.4 2 1...

Ubuntu 上的 EGL 檢測版本 以及影響

最近在ubuntu 20.4 上編譯 使用 egl 的 vtk9.0,因此,必須檢測出環境中是否有 egl。對於 egl 來說,檢測的方式有很多種。最簡單的一種方式是 安裝 mesa 的乙個工具包 sudo apt install mesa utils extra使用 eglinfo可以得到 egl...

如何獲取iphone的硬體版本以及系統資訊

reference 獲取iphone的系統資訊使用 uidevice currentdevice 資訊如下 uidevice currentdevice systemname 系統名稱,如iphone os uidevice currentdevice systemversion 系統版本,如4.2...