sql >> Database >  >> RDS >> Mysql

Hoe u UTF8-tekens opslaat in MySQL

Met MySQL kunt u UTF8-tekens in de database opslaan. Dit is handig bij het werken met niet-ascii- of unicode-gegevens. U kunt zelfs alle tabellen naar UTF8 converteren, als u dat wilt. In dit artikel zullen we bekijken hoe we volledige Unicode-tekens in MySQL kunnen ondersteunen. Hier leest u hoe u UTF8-tekens opslaat in MySQL.



Hoe u UTF8-tekens opslaat in MySQL

Hier zijn de stappen om UTF8-tekens op te slaan in MySQL. MySQL ondersteunt standaard alleen ASCII-tekens en slaat gegevens op in latin1-tekenset.

1. Controleer tekenset

Open terminal en voer de volgende opdracht uit ter vervanging van gebruikersnaam hieronder met uw database gebruikersnaam

$ mysql -u gebruikersnaam -p

U ziet een wachtwoordprompt. Voer het wachtwoord in en log in op MySQL.

Voer de volgende opdracht uit om de tekenset weer te geven

mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+---------------------------------------------------------+
| Variable_name            | Value                                                   |
+--------------------------+---------------------------------------------------------+
| character_set_client     | cp850                                                   |
| character_set_connection | cp850                                                   |
| character_set_database   | latin1                                                  |
| character_set_filesystem | binary                                                  |
| character_set_results    | cp850                                                   |
| character_set_server     | latin1                                                  |
| character_set_system     | utf8                                                    |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.6\share\charsets\ |
+--------------------------+---------------------------------------------------------+

Bonus lezen:hoe te rangschikken over partitie in MySQL

2. Tekenset wijzigen in UTF8

Open mijn.cnf-bestand in terminal

$ sudo vi /etc/my.cnf

Voeg /vervang de regel toe na [client] en [mysqld]

[client] 
default-character-set=utf8mb4 
[mysqld] 
character-set-server = utf8mb4


Bonus lezen:MySQL-tijdzone wijzigen in Query

3. Start MySQL-server opnieuw

Start MySQL Server opnieuw om wijzigingen toe te passen

$ sudo service mysql restart

Vanaf nu kunnen al uw toekomstige databases UTF8-tekens opslaan. Uw bestaande databases blijven echter hun oude tekenset ondersteunen.

Dus we moeten uw database converteren naar UTF8

Bonus lezen:de tijdzone van de MySQL-server wijzigen


4. Converteer MySQL-database naar UTF8

Hier zijn de stappen om alle tabellen naar UTF8 te converteren. Log in op MySQL zoals getoond in stap 1.

Voer de volgende opdracht uit om de tekenset en sortering van uw database te wijzigen in UTF8. Vervang dbname hieronder met uw databasenaam.

mysql> ALTER DATABASE dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

De bovenstaande opdracht converteert alle tabellen in uw database naar UTF8.

Hopelijk helpt de bovenstaande tutorial je om UTF8-gegevens op te slaan in MySQL.

Ubiq maakt het gemakkelijk om gegevens binnen enkele minuten te visualiseren en in realtime dashboards te controleren. Probeer het vandaag nog!

  1. Verbinding maken met een database met Sequel Pro

  2. Is het mogelijk om de natuurlijke volgorde van kolommen in Postgres te wijzigen?

  3. Invoegen als rij niet bestaat (UPSERT) in MySQL

  4. Historische records opslaan in een geschiedenistabel in SQL Server