소스 검색

collation

Евгений Колесников 4 년 전
부모
커밋
a5853ddc37
1개의 변경된 파일15개의 추가작업 그리고 1개의 파일을 삭제
  1. 15 1
      articles/5_1_1_1_erd_workbench.md

+ 15 - 1
articles/5_1_1_1_erd_workbench.md

@@ -88,7 +88,21 @@ MyFlix — это юридическое лицо, которое сдает в
 
     ![](../img/01015.png)
 
-    Выбираем **utf8_unicode_ci** и кликаем по области диаграммы - появится сущность с названием *table1*
+    В поле *Collation* Выбираем **utf8mb4_0900_ai_ci** и кликаем по области диаграммы - появится сущность с названием *table1* (остальные параметры не меняем)
+
+    >Что такое *Collation* и зачем их так много?
+    >
+    >Параметр *Collation* указывает серверу, как нужно сортировать и сравнивать строки. Вот, например, строки “Apple” и “apple”. Они разные или нет? Это зависит от указанного *Collation*. Если с регистром всё более менее понятно, то что делать с примером “елка” и “ёлка”? Считать их как одинаковые или как разные? Это все тоже в *Collation*.
+    >
+    >В *Collation* есть несколько частей:
+    >
+    >* **CI** — Case Insensitive — без учета регистра;
+    >* **CS** — Case Sensitive — c учетом регистра;
+    >* **AS** — Accent Sensitive — с учетом аксонов или диакритических знаков, проще говоря 'a' не считается равным 'ấ'.
+    >* **AI** — Accent Insensitive — без учета аксонов или диакритических знаков, проще говоря 'е' считается равным 'ё'.
+    >* **UTF8** — позволяет хранить данные в UTF8.
+    >* **mb4** — минимальное количество байт для хранения символа utf (**utf8** без суффикса **mb4** использует 3 байта на символ, и в этот набор не входят, например, *emoji*)
+    >* **bin** — простое побитовое сравнение 
 
 2. Дважды кликните мышкой по этой сущности. Появится окно свойств, показанное ниже: