Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 테이블 이름에 밑줄(_)을 사용할 수 있나요?

MySQL 테이블 이름에 밑줄 사용하기

MySQL에서는 테이블 이름에 밑줄(_)을 사용할 수 있습니다. 다만, 일반적인 방법으로 생성하려고 하면 오류가 발생할 수 있으며, 이 경우 테이블 이름을 작은따옴표(' ')가 아닌 백틱(` `)으로 감싸주어야 합니다.

먼저, 작은따옴표로 테이블 이름을 감쌌을 때 어떤 문제가 발생하는지 살펴보겠습니다.

잘못된 예시: 작은따옴표 사용

mysql> create table 'Demo_Table725'(
    ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ClientName varchar(100),
    ClientAge int,
    ClientCountryName varchar(100),
    isMarried boolean
);

위 쿼리는 백틱이 아닌 작은따옴표를 사용했기 때문에 다음과 같은 1064 구문 오류가 발생합니다.

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near ''Demo_Table725'
(
ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
ClientName v' at line 1

올바른 예시: 백틱 사용

이제 위 코드를 수정하여 동일한 테이블을 백틱으로 감싸서 생성해 보겠습니다.

mysql> create table `Demo_Table725`(
    ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ClientName varchar(100),
    ClientAge int,
    ClientCountryName varchar(100),
    isMarried boolean
);
Query OK, 0 rows affected (0.58 sec)

테이블이 성공적으로 생성되었습니다.

데이터 삽입하기

INSERT 명령을 사용하여 테이블에 레코드를 추가합니다. 데이터를 삽입할 때도 마찬가지로 테이블 이름을 백틱으로 감싸야 합니다.

mysql> insert into `Demo_Table725`(ClientName,ClientAge,ClientCountryName,isMarried) values('John',34,'US',true);
Query OK, 1 row affected (0.40 sec)
mysql> insert into `Demo_Table725`(ClientName,ClientAge,ClientCountryName,isMarried) values('Chris',28,'UK',false);
Query OK, 1 row affected (0.25 sec)

데이터 조회하기

SELECT 문을 사용하여 테이블의 모든 레코드를 확인해 보겠습니다.

mysql> select *from `Demo_Table725`;

실행 결과는 다음과 같습니다.

+----------+------------+-----------+-------------------+-----------+
| ClientId | ClientName | ClientAge | ClientCountryName | isMarried |
+----------+------------+-----------+-------------------+-----------+
| 1        | John       | 34        | US                | 1         |
| 2        | Chris      | 28        | UK                | 0         |
+----------+------------+-----------+-------------------+-----------+
2 rows in set (0.00 sec)

정리

MySQL에서 밑줄이 포함된 테이블 이름을 사용할 때는 반드시 백틱(` `)으로 감싸야 한다는 점을 기억하세요. 작은따옴표를 사용하면 SQL 구문 오류(ERROR 1064)가 발생하므로 주의해야 합니다.