最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL建立數(shù)據(jù)庫時字符集與排序規(guī)則的選擇詳解

 更新時間:2023年06月12日 09:06:58   作者:十一*  
當數(shù)據(jù)庫需要適應不同的語言就需要有不同的字符集,下面這篇文章主要給大家介紹了關于MySQL建立數(shù)據(jù)庫時字符集與排序規(guī)則的選擇的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

前言

在MySQL中,字符集和排序規(guī)則是區(qū)分開來的,你可以單獨設置字符集和排序規(guī)則。

MySQL字符集和排序規(guī)則有關聯(lián)而且還不是必選項,如果字符集和排序規(guī)則都不填寫,Mysql會做默認處理;或者設置其一,比如設置字符集,會默認設置了與字符集相應的排序規(guī)則。

我們建立數(shù)據(jù)庫是總要涉及到字符集和排序規(guī)則的選擇問題?怎么選擇呢,有什么區(qū)別呢?

一、字符集?

先說字符,字符(Character)是各種文字和符號的總稱,包括各國家文字、標點符號、圖形符號、數(shù)字等。

字符集(Character set)是多個字符的集合,常見字符集名稱:ASCII字符集、GB2312字符集、BIG5字符集、 GB18030字符集、Unicode字符集等。計算機要準確的處理各種字符集文字,就需要進行字符編碼,以便計算機能夠識別和存儲各種文字。

字符編碼(Character encoding)也稱字集碼,是把字符集中的字符通過編碼成為指定集合中某一對象(例如:比特模式、自然數(shù)序列、8位組或者電脈沖),以便文本在計算機中存儲和通過通信網絡的傳遞。常見的例子包括將拉丁字母表編碼成摩斯電碼和ASCII。其中,ASCII將字母、數(shù)字和其它符號編號,并用7比特的二進制來表示這個整數(shù)。通常會額外使用一個擴充的比特,以便于以1個字節(jié)的方式存儲。

二、Mysql中的字符集

在MySQL中,常用的幾個字符集有UTF8、UTF8MB4、UTF16、UTF32等,那么Unicode與UTF8、UTF8MB4、UTF16、UTF32是什么關系?我們新建數(shù)據(jù)庫時選擇哪種字符集呢?

1.Unicode與UTF8、UTF8MB4、UTF16、UTF32關系

Unicode(統(tǒng)一碼、萬國碼、單一碼)是計算機科學領域里的一項業(yè)界標準,包括字符集、編碼方案等。Unicode 是為了解決傳統(tǒng)的字符編碼方案的局限而產生的,它為每種語言中的每個字符設定了統(tǒng)一并且唯一的二進制編碼,以滿足跨語言、跨平臺進行文本轉換、處理的要求。UTF8、UTF16、UTF32是Unicode碼一種實現(xiàn)形式,都是屬于Unicode編碼。

2.Mysql新建數(shù)據(jù)庫時選擇哪種字符集呢?

UTF8和UTF8MB4是常用的兩種字符集,至于這兩個選用哪個要根據(jù)自己業(yè)務情況而定。UTF8MB4兼容UTF8,比UTF8能表示更多的字符,Unicode編碼區(qū)從編碼區(qū)1-126屬于UTF8區(qū),當然UTF8MB4也兼容這個區(qū),126行以下就是UTF8MB4擴充區(qū),所以你要根據(jù)自己的業(yè)務進行選擇,一般情況下UTF8就滿足需求,當然如果考慮到以后擴展,比如考慮到以后存儲emoji,就選擇UTF8MB4,否則只是浪費空間。我建議還是選擇UTF8MB4,畢竟對于大部分公司而言空間不是什么大問題。

三、Mysql排序規(guī)則

UTF8MB4常用的排序規(guī)則:utf8mb4_unicode_ci、utf8mb4_general_ci、utf8mb4_bin,選用哪種方式呢?先來分析一下:

1、準確性:

(1)utf8mb4_unicode_ci 是基于標準的Unicode來排序和比較,能夠在各種語言之間精確排序,不區(qū)分大小寫

(2)utf8mb4_general_ci 沒有實現(xiàn)Unicode排序規(guī)則,在遇到某些特殊語言或者字符集,排序結果可能不一致,不區(qū)分大小寫

2、性能:

 ?。?)utf8mb4_general_ci 在比較和排序的時候更快

  (2)utf8mb4_unicode_ci 在特殊情況下,Unicode排序規(guī)則為了能夠處理特殊字符的情況,實現(xiàn)了略微復雜的排序算法。相比選擇哪一種collation,使用者更應該關心字符集與排序規(guī)則在db里需要統(tǒng)一。

 ?。?)utf8mb4_bin:將字符串每個字符用二進制數(shù)據(jù)編譯存儲,區(qū)分大小寫,而且可以存二進制的內容。

總而言之,utf8mb4_general_ci 和utf8mb4_unicode_ci 是我們最常使用的排序規(guī)則。utf8mb4_unicode_ci 校對速度快,但準確度稍差。utf8_unicode_ci準確度高,但校對速度稍慢,兩者都不區(qū)分大小寫。這兩個選哪個視自己情況而定,還是那句話盡可能保持db中的字符集和排序規(guī)則的統(tǒng)計。

四、Mysql查詢字符集和排序規(guī)則常用的命令

功能命令
查看數(shù)據(jù)庫字符集show create database 數(shù)據(jù)庫名
查看數(shù)據(jù)表全部字段排序規(guī)則show full columns from 表

總結 

到此這篇關于MySQL建立數(shù)據(jù)庫時字符集與排序規(guī)則的選擇的文章就介紹到這了,更多相關MySQL字符集與排序規(guī)則內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MYSQL 表的全面總結

    MYSQL 表的全面總結

    這篇文章主要介紹了MYSQL表,文章主要圍繞MySQL表的相關資料如創(chuàng)建表、刪除表、修改表、等展開內容,需要的朋友可以參考一下,希望對你有所幫助
    2021-11-11
  • MySql常用數(shù)據(jù)類型與操作詳解

    MySql常用數(shù)據(jù)類型與操作詳解

    MySQL 是最流行的關系型數(shù)據(jù)庫管理系統(tǒng),在WEB應用方面 MySQL 是最好的。本文將為大家詳細介紹一下MySQL的基礎操作,需要的可以參考一下
    2022-07-07
  • MySQL之庫和表的操作實踐

    MySQL之庫和表的操作實踐

    本文講解MySQL數(shù)據(jù)庫和表的操作,涵蓋創(chuàng)建、修改、刪除,字符集與校驗規(guī)則設置,備份恢復方法,及查看連接狀態(tài),強調注意事項如刪除風險和校驗規(guī)則對大小寫的影響
    2025-09-09
  • Mysql中文亂碼以及導出為sql語句和Excel問題解決方法[圖文]

    Mysql中文亂碼以及導出為sql語句和Excel問題解決方法[圖文]

    這幾天基于Heritrix寫了一個爬蟲,用到mysql,在導入導出數(shù)據(jù)時,遇到一些亂碼問題,好不容易解決了,記錄一下,以備查看
    2013-04-04
  • MySql一條查詢語句的執(zhí)行流程究竟是怎么樣的

    MySql一條查詢語句的執(zhí)行流程究竟是怎么樣的

    一直是想知道一條SQL語句是怎么被執(zhí)行的,它執(zhí)行的順序是怎樣的,然后查看總結各方資料,就有了下面這一篇文章了,下面這篇文章主要給大家介紹了關于MySql一條查詢語句的執(zhí)行流程究竟是怎么樣的,需要的朋友可以參考下
    2024-06-06
  • mysql報錯:Deadlock found when trying to get lock; try restarting transaction的解決方法

    mysql報錯:Deadlock found when trying to get lock; try restarti

    這篇文章主要給大家介紹了關于mysql出現(xiàn)報錯:Deadlock found when trying to get lock; try restarting transaction的解決方法,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-07-07
  • 如何將mysql遷移到翰高數(shù)據(jù)庫

    如何將mysql遷移到翰高數(shù)據(jù)庫

    瀚高基礎軟件股份有限公司成立于2005年,是國內數(shù)據(jù)庫行業(yè)龍頭企業(yè),專業(yè)從事數(shù)據(jù)庫管理系統(tǒng)研發(fā)、銷售與服務,下面這篇文章主要介紹了如何將mysql遷移到翰高數(shù)據(jù)庫的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2026-03-03
  • Mysql匿名登錄無法創(chuàng)建數(shù)據(jù)庫問題解決方案

    Mysql匿名登錄無法創(chuàng)建數(shù)據(jù)庫問題解決方案

    這篇文章主要介紹了Mysql匿名登錄無法創(chuàng)建數(shù)據(jù)庫問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-12-12
  • windows下mysql 8.0.12安裝步驟及基本使用教程

    windows下mysql 8.0.12安裝步驟及基本使用教程

    這篇文章主要為大家詳細介紹了windows下mysql 8.0.12安裝步驟及基本使用教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • 基于Php mysql存儲過程的詳解

    基于Php mysql存儲過程的詳解

    本篇文章是對Php中的mysql存儲過程進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06

最新評論

荣昌县| 健康| 镇赉县| 噶尔县| 巴东县| 桂平市| 清丰县| 日土县| 仪陇县| 长白| 克什克腾旗| 正宁县| 黄骅市| 临湘市| 乡宁县| 响水县| 云霄县| 长泰县| 临西县| 宜川县| 汝阳县| 右玉县| 松桃| 平乐县| 洪湖市| 通山县| 新宾| 水富县| 蒲城县| 江津市| 天镇县| 潍坊市| 射洪县| 若羌县| 万宁市| 崇左市| 泌阳县| 阳原县| 永吉县| 华宁县| 怀化市|