MySQL에서 큰따옴표(")가 포함된 문자열을 레코드로 삽입하려면 백슬래시(\)를 이스케이프 문자로 사용해야 합니다. 아래 구문과 같이 큰따옴표 앞에 백슬래시를 붙여주면 됩니다.
기본 구문
insert into yourTableName values('"yourValue"');실습 예제
1단계: 테이블 생성
먼저 다음과 같이 테스트용 테이블을 생성합니다.
mysql> create table DemoTable
-> (
-> Name varchar(20)
-> );
Query OK, 0 rows affected (0.63 sec)2단계: 큰따옴표가 포함된 데이터 삽입
INSERT 명령을 사용하여 큰따옴표로 감싼 이름 값들을 차례대로 삽입합니다.
mysql> insert into DemoTable values('\"John\"');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('\"Chris\"');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values('\"Adam Smith\"');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('\"Carol\"');
Query OK, 1 row affected (0.20 sec)3단계: 결과 확인
SELECT 문으로 테이블의 모든 레코드를 조회합니다.
mysql> select *from DemoTable;
실행 결과는 다음과 같습니다. 각 레코드가 큰따옴표로 감싸진 상태로 저장된 것을 쉽게 확인할 수 있습니다.
+--------------+ | Name | +--------------+ | "John" | | "Chris" | | "Adam Smith" | | "Carol" | +--------------+ 4 rows in set (0.00 sec)
핵심 정리
MySQL에서 문자열 안에 큰따옴표를 포함시키려면 해당 문자 앞에 백슬래시(\)를 붙여 이스케이프 처리해야 합니다. 이렇게 하면 MySQL이 큰따옴표를 문자열의 시작이나 끝으로 잘못 해석하지 않고 하나의 일반 문자로 인식하여 정상적으로 저장됩니다. 참고로 문자열을 작은따옴표(')로 감싸는 경우에는 내부의 큰따옴표를 이스케이프 없이 그대로 사용할 수도 있습니다.