За замовченням MySQL сучасної редакції має кодування utf8mb4 яке коректно обробляє українську абетку.
Щоб перевірити встановлене кодування бази, вводимо в консоль команду:
SHOW VARIABLES;
mysql -e 'show variables' | grep collation_database
Створимо табличку з кодуванням latin1 та намагатимемось додати туди інформацію українською.
utf8mb4 означає, що кожен символ зберігається як максимум 4 байти у схемі кодування UTF-8.
0900 відноситься до версії алгоритму сортування Unicode. (Алгоритм зіставлення Unicode — це метод, який використовується для порівняння двох рядків Unicode, який відповідає вимогам стандарту Unicode).
ai означає нечутливість до акценту. Тобто при сортуванні немає різниці між e, è, é, ê і ë.
ci означає нечутливість до регістру. Тобто немає різниці між p і P під час сортування.
DROP DATABASE base2;
CREATE DATABASE base2;
USE base2;
CREATE TABLE Customers_us
(
Id INT PRIMARY KEY AUTO_INCREMENT,
Age INT,
FirstName VARCHAR(20) NOT NULL,
LastName VARCHAR(20) NOT NULL,
Phone VARCHAR(20) NOT NULL UNIQUE
)
DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
INSERT Customers_us(Age, FirstName, LastName, Phone)
VALUES (18,'Ganna','Velickiv','0688889977');
INSERT Customers_us(Age, FirstName, LastName, Phone)
VALUES (19,'Ury','Medvejuy','0688889988');
INSERT Customers_us(Age, FirstName, LastName, Phone)
VALUES (39,'Anton','Chernov','0687889988');
INSERT Customers_us(Age, FirstName, LastName, Phone)
VALUES (22,'Anna','Ignatss','0687885988');
INSERT Customers_us(Age, FirstName, LastName, Phone)
VALUES (32,'Olga','Hiv','0681885988');
INSERT Customers_us(Age, FirstName, LastName, Phone)
VALUES (32,'Ірен','Єґнєва','068188%988');
ERROR 1366 (HY000): Incorrect string value: '\xD0\x86\xD1\x80\xD0\xB5...' for column 'FirstName' at row 1
SELECT * FROM Customers_us;
ALTER TABLE base2.Customers_us CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
SELECT * FROM Customers_us;
INSERT Customers_us(Age, FirstName, LastName, Phone)
VALUES (32,'Ірен','Єґнєва','0687885444');
SELECT * FROM Customers_us;
Смотрите видео Українська абетка в MySQL (utf8mb4) онлайн без регистрации, длительностью часов минут секунд в хорошем качестве. Это видео добавил пользователь spa it 02 Декабрь 2022, не забудьте поделиться им ссылкой с друзьями и знакомыми, на нашем сайте его посмотрели 180 раз и оно понравилось 6 людям.