show databases;
CREATE DATABASE channeltalk CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
use channeltalk;
CREATE TABLE user_chat_tag (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
chatId VARCHAR(100) NOT NULL,
name VARCHAR(50) NOT NULL,
phone VARCHAR(20) NOT NULL,
state VARCHAR(10) NOT NULL,
tag VARCHAR(20) NOT NULL,
closedAt DATETIME NOT NULL
);
CREATE TABLE user_chat_message (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
chatId VARCHAR(100) NOT NULL,
personType VARCHAR(20) NOT NULL,
createdAt DATETIME NOT NULL,
plainText VARCHAR(500) NOT NULL
);
MySQL 4.1 이전에는 VARCHAR(N)의 N은 바이트였다고 한다.
MySQL 4.1 이후부턴 VARCHAR(N)의 N은 문자의 수다.
따라서 VARCHAR(500)인 경우, 한글이든 영어든 500만큼 입력이 가능하다.
그렇다면 글자수를 어떻게 파악할까?
select char_length("🟢🟢🟢") from dual; // 3
select char_length("가나다") from dual; // 3
select char_length("abc") from dual; // 3
항상 좋은 글 감사합니다.