
SQL 모드 (--sql-mode) 설정은 MySQL에서 SQL 문법을 처리하는 방식을 결정하는 중요한 옵션입니다.
- ANSI_QUOTES 모드: 이 모드는 MySQL에서 쌍따옴표 ("")를 쌍따옴표로 인식하도록 합니다. 일반적으로 SQL 문법에서는 쌍따옴표는 문자열을 나타내는 데 사용되지만, ANSI_QUOTES 모드에서는 쌍따옴표를 식별자로 인식합니다. 예를 들어, `SELECT "테이블"`은 테이블 이름으로 인식됩니다.
- STRICT_TRANS_TABLES 모드: 이 모드는 MySQL에서 데이터를 삽입, 업데이트, 삭제할 때 데이터의 타입을 엄격하게 검사합니다. 만약 데이터의 타입이 맞지 않다면, MySQL은 오류를 발생시키고 데이터를 삽입, 업데이트, 삭제하지 않습니다. 예를 들어, `INSERT INTO 테이블 (문자열) VALUES (숫자)`는 오류를 발생시킵니다.
두 모드는 서로 독립적이므로, 둘 다 설정할 수 있습니다.
예를 들어, `--sql-mode=ANSI_QUOTES,STRICT_TRANS_TABLES`를 설정하면, MySQL은 쌍따옴표를 식별자로 인식하고, 데이터의 타입을 엄격하게 검사합니다.
2025-04-22 15:24