MySQL에서 열(컬럼) 이름에 공백을 포함하려면 백틱(backtick, `)을 활용하면 됩니다. 일반적인 식별자 규칙과 달리, 백틱으로 감싸면 공백이 포함된 열 이름도 자유롭게 사용할 수 있습니다.
먼저 예제에 사용할 테이블을 생성해 보겠습니다.
1. 테이블 생성
mysql> create table blankSpacesDemo -> ( -> `Student Id` int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> `Student Full Name` varchar(100) -> ); Query OK, 0 rows affected (0.51 sec)
위 쿼리에서 볼 수 있듯이, `Student Id`와 `Student Full Name`처럼 열 이름에 공백을 포함한 경우 반드시 백틱으로 감싸야 합니다.
2. 데이터 삽입
이제 INSERT 명령어를 사용해 테이블에 레코드를 삽입합니다.
mysql> insert into blankSpacesDemo(`Student Full Name`) values('John Smith');
Query OK, 1 row affected (0.16 sec)
mysql> insert into blankSpacesDemo(`Student Full Name`) values('Carol Taylor');
Query OK, 1 row affected (0.14 sec)
mysql> insert into blankSpacesDemo(`Student Full Name`) values('David Miller');
Query OK, 1 row affected (0.15 sec)3. 데이터 조회
SELECT 문을 사용해 테이블의 모든 레코드를 조회합니다. 이때도 공백이 포함된 열 이름은 백틱으로 감싸야 합니다.
mysql> select `Student Id`,`Student Full Name` from blankSpacesDemo;
4. 실행 결과
아래 출력 결과를 보면 “Student Full Name” 열 이름에 공백이 그대로 표시되는 것을 확인할 수 있습니다.
+------------+--------------------+ | Student Id | Student Full Name | +------------+--------------------+ | 1 | John Smith | | 2 | Carol Taylor | | 3 | David Miller | +------------+--------------------+ 3 rows in set (0.00 sec)
정리
MySQL에서 열 이름에 공백을 사용할 때는 다음 사항을 기억하세요.
- 테이블 생성 시 공백이 포함된 열 이름은 백틱(`)으로 감싸야 합니다.
- INSERT, SELECT 등 모든 SQL 문에서 해당 열을 참조할 때도 동일하게 백틱을 사용해야 합니다.
- 백틱을 생략하면 구문 오류(Syntax Error)가 발생할 수 있으므로 주의가 필요합니다.