이모지를 디비에 입력하려면 해당 칼럼이 utf8가 아닌 utf8mb4로 설정돼 있어야 한다.
테이블을 생성할 때 charset을 설정했다면 칼럼도 그 속성을 따라가지만,
추후에 charset을 변경하는 거라면 테이블, 칼럼 각각 charset을 수정해야 한다.
아래 수정 쿼리를 통해 charset을 수정하면 해결된다.
charset조회 쿼리
- DB
SELECT DEFAULT_CHARACTER_SET_NAME
FROM INFORMATION_SCHEMA.SCHEMATA
WHERE SCHEMA_NAME = 'DB명';
- Table
SELECT TABLE_COLLATION
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'DB명';
- Column
SELECT COLUMN_NAME, CHARACTER_SET_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = "DB명"
AND TABLE_NAME = "TABLE명"
수정 쿼리
- 테이블
ALTER TABLE "테이블명"
CHARACTER SET = utf8mb4 , COLLATE = utf8mb4_general_ci ;
- 칼럼
ALTER TABLE "테이블명"
CHARACTER SET = utf8mb4 , COLLATE = utf8mb4_unicode_ci ,
CHANGE COLUMN `title` `title` VARCHAR(128) CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci' NOT NULL;
'개발' 카테고리의 다른 글
피들러(Fiddler)에서 IP 나오게 하는 법 (0) | 2024.01.26 |
---|---|
피들러 인증서 오류 해결 방법 (0) | 2023.09.19 |
아파치 conf, rewrite 주의사항 (0) | 2023.08.25 |
mysql Disk is full writing 에러 처리 (0) | 2023.06.27 |
phpstorm 화면 깨짐 오류 (0) | 2023.05.25 |
댓글