Example _ MySQL

Source: Internet
Author: User
This article describes how to solve the problem of garbled characters in MySQL return parameters of Java programs. it uses examples to explain the configuration of UTF-8 encoding in MySQL, for more information about MySQL character set, see. In Windows, you can modify

Default-character-set = utf8 // default character set of the client

In the MySQL client tool, enter

SHOW VARIABLES LIKE 'character%'; 

Shown below

In this way, garbled characters are returned after reading information. the solution is to execute a set names 'utf8' query before reading data after connecting to the database.

The simplest and perfect modification method is to modify the character set key value in mysql's my. cnf File (pay attention to the configuration field details ):

1. add default-character-set = utf8 to the [client] field, as shown below:

port = 3306 socket = /var/lib/mysql/mysql.sock default-character-set=utf8 

2. add character-set-server = utf8 to the [mysqld] field as follows:

port = 3306 socket = /var/lib/mysql/mysql.sock character-set-server=utf8 

3. add default-character-set = utf8 to the [mysql] field, as shown below:

no-auto-rehash default-character-set=utf8 

After the modification, the service mysql restart restarts the mysql service to take effect. Note: The [mysqld] field is different from the [mysql] field. No one has reported this on the Internet.

Use show variables like 'character % '; check that the database encoding has been changed to utf8.

+--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 


4. if all the above changes are garbled, the remaining problems must be on the connection layer. The solution is to execute the following statement (directly at the beginning of the SQL file) before sending the query ):

SET NAMES ‘utf8′; 

It is equivalent to the following three commands:

SET character_set_client = utf8; SET character_set_results = utf8; SET character_set_connection = utf8; 


Many other methods on the Internet cannot completely solve this problem, which can be perfectly solved!

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.