Sengoli sa Lingoloa
- 1 Hobaneng ha polelo ea Emoji e kentsoeng sebakeng sa polokelo ea litaba e fetoha sebopeho sa letšoao la lipotso?
- 2 Mokhoa oa ho rarolla bothata boo polelo ea Emoji e kentsoeng ka har'a database e fetoha sebopeho sa letšoao la potso?
- 3 Tharollo ea bothata ba sebopeho sa MySQL Emoji
- 4 U ka fetola sebopeho sa database joang ho utf8mb4?
Haeba polelo ea Emoji e bolokiloe ho utf8 encodingMySQL databasekapa MariaDB, ha e khone ho hlahisoa.
Hobaneng ha polelo ea Emoji e kentsoeng sebakeng sa polokelo ea litaba e fetoha sebopeho sa letšoao la lipotso?
Hobane lipolelo tsa Emoji ke litlhaku tse 4-byte, 'me sebopeho sa utf8 se tšehetsa feela litlhaku tse 1-3 tsa litlhaku, lipolelo tsa Emoji li ke ke tsa ngoloa sebakeng sa polokelo.
Mokhoa oa ho rarolla bothata boo polelo ea Emoji e kentsoeng ka har'a database e fetoha sebopeho sa letšoao la potso?
Ho na le litharollo tse 2:
- Kenya mongolo ka bowena, u tlosa litlhaku tsa li-byte tse 'ne ka litlhaku tse ikhethileng.
- fetola MySQL Sete ea litlhaku tsa database, fetola sebopeho sa database ho tloha ho utf8 ho ea ho utf8mb4, tšehetsa litlhaku tse 1-4.
Ha e le hantle, mokhoa oa pele o sebetsa haholo 'me ha o khothaletsoe.
Ho khothalletsoa ho sebelisa tharollo ea bobeli, ho fetola sete ea sebopeho sa database sa MySQL.
Ho tloha ka mofuta oa MySQL 5.5.3, database e ka tšehetsa sebopeho sa utf4mb8 sa li-byte tse 4, 'me sebapali se ka ba le li-byte tse 4, kahoo se ka tšehetsa lihlopha tse ngata tsa litlhaku, hape se ka boloka lipolelo tsa Emoji.
- Ka mor'a MySQL 5.5.3, ha e le hantle u ka ntlafatsa ka mokhoa o sa tsitsang ho sete ea litlhaku tsa utf8mb4.
- Ka nako e ts'oanang, utf8mb4 e lumellana le sete ea litlhaku tsa utf8.
- Khoutu, boemo le polokelo ea litlhaku tsa utf8 li ho utf8mb4.
- E ts'oanang le sete ea litlhaku tsa utf8, ha ho na tšenyo ho data e teng.
Ka lebaka laphpMyAdminBakeng sa litafole tse sa tsoa bōptjoa sebakeng sa polokelo ea boitsebiso bo sa tsoa thehoa, mokhoa oa kamehla oa khouto ke:Latin1
- Khouto ena e ke ke ea kenya mantsoe a Sechaena le Emoji;
- U hloka ho fetola encoding ea sebopeho sa sebopeho sa database le tafole ho utf8mb4;
- Ebe o qala MySQL hape, o ka kenya mantsoe a Sechaena le Emoji.
Tharollo ea bothata ba sebopeho sa MySQL Emoji
Likhahlelo tsa 1:Fetola faele ea tlhophiso ea MySQL my.cnf
- (Seva ea Windows ke my.ini,LinuxSeva ke my.cnf)
- my.cnf file, hangata ka
/etc/mysql/my.cnf
Sebaka. - Sehlopha sa Taolo sa CWPFaele ea my.cnf, e kene
/etc/my.cnf
Sebaka.
Kamora ho e fumana, ka kopo eketsa litaba tse latelang likarolong tse tharo tse latelang ▼
[client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4'
Likhahlelo tsa 2:Qala hape database ea MySQL
service mysqld restart
Hata 3: Sheba sebopeho se behiloeng hape 'me u kenye ▼ moleng oa taelo oa SQL
SHOW VARIABLES WHERE Variable_name LIKE 'character_set_database';
Sheba hore na lintho tse latelang ▼
Kenya taelo e latelang ea SQL▼
SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';
Hlahloba hore na e ka tsela e latelang▼
+--------------------------+--------------------+ | Variable_name | Value | +--------------------------+--------------------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | collation_connection | utf8mb4_unicode_ci | | collation_database | utf8mb4_unicode_ci | | collation_server | utf8mb4_unicode_ci | +--------------------------+--------------------+
Kamora ho theha database e ncha ho phpMyAdmin, o tlamehaSheba khoutu ea polokelo ea boitsebiso ▼
SHOW CREATE DATABASE db_name;
- joaloka:
SHOW CREATE DATABASE test;
Haeba encoding ea database ha e eoutf8mb4
, o tlameha ho fetola tlhaku ea database e behiloeng houtf8mb4
.
U ka fetola sebopeho sa database joang ho utf8mb4?
Hata 1: Tobetsa lebitso la hajoale la database ho phpMyAdmin, ebe o tobetsa SQL.
Mohato oa 2: Kenya taelo e latelang ho fetola sebopeho sa database se behiloeng houtf8mb4
▼
ALTER DATABASE db_name DEFAULT CHARACTER SET utf8mb4
- joaloka:
ALTER DATABASE test DEFAULT CHARACTER SET utf8mb4;
Likhahlelo tsa 3:Qala hape database ea MySQL
service mysqld restart
- Ho felile ke lehlohonolo.
Mehlala ke ena ea litaelo tsa SQL:
Fetola sete ea tlhaku ea kamehla le litšiea tsohle tsa litafole ho sete ea litlhaku tse ncha ▼
ALTER TABLE tbl_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8_general_ci;
- joaloka:
ALTER TABLE logtest CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8_general_ci;
Ha feela o ka fetola sete ya tlhaku ya kamehla ya tafole▼
ALTER TABLE tbl_name DEFAULT CHARACTER SET utf8mb4 COLLATE utf8_general_ci;
- joaloka:
ALTER TABLE logtest DEFAULT CHARACTER SET utf8mb4 COLLATE utf8_general_ci;
Fetola sehlopha sa litlhaku ▼
ALTER TABLE tbl_name CHANGE c_name c_name CHARACTER SET character_name
- joaloka:
ALTER TABLE logtest CHANGE title title VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci;
Sheba khoutu ea tafole ▼
SHOW CREATE TABLE tbl_name;
Sheba Likhoutu tsa Tšimo ▼
SHOW FULL COLUMNS FROM tbl_name;
Sheba khoutu ea hajoale ea database ▼
SHOW VARIABLES LIKE 'character_set_%';
- Sephutheloana sa mysql-connector-java driver se tšehetsa feela utf5.1.13mb8 ho 4+
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) e arolelane "Joang ho boloka Emoji ho MySQL? Kenya database Emoji expression question mark problem", e leng thuso ho uena.
Rea u amohela ho arolelana sehokelo sa sengoloa sena:https://www.chenweiliang.com/cwl-26592.html
Rea u amohela ho mocha oa Telegraph oa blog ea Chen Weiliang ho fumana lintlha tsa morao-rao!
📚 Tataiso ena e na le boleng bo boholo, 🌟Ona ke monyetla o sa tloaelehang, se ke oa o fetoa! ⏰⌛💨
Share le rata haeba u rata!
Ho arolelana le lintho tseo u li ratang ke khothatso ea rona e tsoelang pele!