Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL 테이블에 열이 있는지 확인하는 방법은 무엇입니까?

<시간/>

열의 존재 여부를 이해하기 위해 다음과 같은 접근 방식이 있습니다 -

  • DESC 명령의 도움으로
  • SHOW 명령 사용

먼저 열이 있는 테이블을 생성합니다 -

mysql> CREATE table ColumnExistDemo
-> (
-> UniqueId int,
-> UniqueName varchar(200),
-> UniqueAddress varchar(200)
-> );
Query OK, 0 rows affected (0.57 sec)

첫 번째 접근 방식에서는 의미 있는 정보가 포함된 전체 열 이름을 얻습니다. 구문은 다음과 같습니다 -

DESC yourTableName;

위의 쿼리를 적용하여 컬럼 이름이 존재하는지 확인해보자. 그러나 이 방법은 모든 열을 표시하므로 좋지 않습니다.

mysql> DESC ColumnExistDemo;

다음은 출력입니다.

+---------------+--------------+------+-----+---------+-------+
| Field         | Type         | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+-------+
| UniqueId      | int(11)      | YES  |     | NULL    |       |
| UniqueName    | varchar(200) | YES  |     | NULL    |       | 
| UniqueAddress | varchar(200) | YES  |     | NULL    |       |
+---------------+--------------+------+-----+---------+-------+
3 rows in set (0.01 sec)

단일 열을 확인할 수 있으므로 두 번째 방법이 더 좋습니다. 구문은 다음과 같습니다 -

SHOW COLUMNS from `yourTableName` LIKE 'yourColumnName';

이제 위의 쿼리를 적용하여 열이 있는지 여부를 확인합니다. 쿼리는 다음과 같습니다 -

mysql> SHOW COLUMNS from `ColumnExistDemo` LIKE 'UniqueName';

다음은 출력입니다.

+------------+--------------+------+-----+---------+-------+
| Field      | Type         | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| UniqueName | varchar(200) | YES  |     | NULL    |       |
+------------+--------------+------+-----+---------+-------+
1 row in set (0.00 sec)