본문 바로가기
studies/Back-end

[MariaDB] INSERT문 한글 오류(Incorrect string value) 해결

by mjkcool 2020. 5. 26.
728x90
반응형

 

my.ini 파일에 아래 속성을 지정

[mysqld]
init_connect="SET collation_connection = utf8_general_ci" 
init_connect="SET NAMES utf8" 
collation-server = utf8_general_ci
character-set-server = utf8

[client]
default-character-set = utf8

[mysql]
default-character-set=utf8​

 

 

 

 

Mysql> SHOW VARIABLES LIKE "c%"

명령 입력 후 Value값에 'latin1'이 있으면 안됨. 모두 'utf8'로 바꾼다.

 

쿼리창에서 속성 설정을 할 수 있다. (my.ini 수정만으로 변경 안 될 경우)

Mysql> SET [Variable_name] = [Value]

MariaDB [spring]> show variables like "c%";
+----------------------------------+-----------------------------------------------+
| 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               | C:\Program Files\MariaDB 10.4\share\charsets\ |
| check_constraint_checks          | ON                                            |
| collation_connection             | utf8_general_ci                               |
| collation_database               | utf8_general_ci                               |
| collation_server                 | utf8_general_ci                               |
| column_compression_threshold     | 100                                           |
| column_compression_zlib_level    | 6                                             |
| column_compression_zlib_strategy | DEFAULT_STRATEGY                              |
| column_compression_zlib_wrap     | OFF                                           |
| completion_type                  | NO_CHAIN                                      |
| concurrent_insert                | AUTO                                          |
| connect_timeout                  | 10                                            |
| core_file                        | OFF                                           |
+----------------------------------+-----------------------------------------------+​

 

 

 

INSERT문이 잘 먹혀도 cmd창에서 SELECT시 한글이 물음표로 깨짐이 발생할 수 있다.

이때 Sql GUI툴을 이용해 다시 SELECT문을 실행해보면 한글이 정상적으로 보일 수도 있다.

+그 이유는 모르겠다. 참고로 필자는 'SQLyog' 사용.

728x90
반응형