Query System Variable(쿼리 시스템 변수)

대소문자 구분 / 문자열 표기 방법과 같은 SQL 작성 규칙은 MySQL 서버의 시스템 설정에 따라 달라진다.

SQL 모드

SQL 문장 작성 규칙뿐만 아니라 내부적으로 자동 실행되는 데이터 타입 변환 및 기본값 제어 같은 옵션을 가지고 있기 때문에 SQL 모드를 변경하면 SQL 문장의 실행 결과가 달라질 수 있다. 때문에 테이블을 생성하고 데이터를 저장하기 시작했다면 SQL 모드를 변경하지 않는 것이 좋다.

영문 대소문자 구분

MySQL의 DB나 테이블이 디스크의 디렉터리나 파일로 매핑되는데, 이 떄문에 MySQL 서버는 설치된 운영체제에 따라 테이블명의 대소문자를 구분한다.

  • 윈도우: 대소문자 구분 X

  • 유닉스 계열: 대소문자 구분 O

운영체제 이전에 따른 대소문자 구분을 여부에 영향을 받지 않기 위해선 MySQL 서버의 lower_case_table_names 시스템 변수를 1로 설정하여 모두 소문자로 저장하게 할 수 있다. 가능하면 테이블을 생성할 때는 대문자 소문자 중 하나로 통일하여 사용하는 것이 좋다.

MySQL 예약어

생성하는 데이터베이스/테이블/컬럼의 이름을 예약어와 같은 키워드로 생성하기 위해선 백틱(`)이나 쌍따옴표로 감싸서 사용할 수 있다.

참고자료

Last updated