>데이터 베이스 >MySQL 튜토리얼 >MySQL은 데이터베이스 아래의 테이블 구조를 쿼리합니까?

MySQL은 데이터베이스 아래의 테이블 구조를 쿼리합니까?

青灯夜游
青灯夜游원래의
2020-10-14 16:29:393123검색

방법: 1. DESCRIBE 명령을 사용하여 "DESCRIBE table name;" 구문으로 테이블 구조를 테이블 형식으로 표시합니다. 2. "SHOW CREATE TABLE" 명령을 사용하여 다음 형식으로 테이블 구조를 표시합니다. SQL 문, "SHOW CREATE TABLE 테이블 이름;" 구문.

MySQL은 데이터베이스 아래의 테이블 구조를 쿼리합니까?

(추천 튜토리얼: mysql 동영상 튜토리얼)

데이터 테이블을 생성한 후 테이블 구조(테이블 정보)를 확인해야 하는 경우가 종종 있습니다. MySQL에서는 DESCRIBE 및 SHOW CREATE TABLE 명령을 사용하여 데이터 테이블의 구조를 볼 수 있습니다.

DESCRIBE: 테이블 구조를 테이블 형식으로 표시합니다.

DESCRIBE/DESC 문은 필드 이름, 필드 데이터 유형 등 테이블의 필드 정보를 테이블 형식으로 표시합니다. 기본 키, 기본값 유무 등 , 구문 형식은 다음과 같습니다.

DESCRIBE <表名>;

또는 약어:

DESC <表名>;

[예제 1] 각각 DESCRIBE 및 DESC를 사용하여 tb_emp1 테이블의 테이블 구조를 확인합니다. .SQL 문 및 실행 결과는 다음과 같습니다.

mysql> DESCRIBE tb_emp1;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int(11)     | YES  |     | NULL    |       |
| name   | varchar(25) | YES  |     | NULL    |       |
| deptId | int(11)     | YES  |     | NULL    |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.14 sec)

mysql> DESC tb_emp1;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int(11)     | YES  |     | NULL    |       |
| name   | varchar(25) | YES  |     | NULL    |       |
| deptId | int(11)     | YES  |     | NULL    |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.14 sec)

그 중 각 필드의 의미는 다음과 같습니다.

  • Null: 해당 열에 NULL 값을 저장할 수 있는지 여부를 나타냅니다.

  • Key: 열이 색인화되었는지 여부를 나타냅니다. PRI는 열이 테이블의 기본 키의 일부라는 것을 의미하고, UNI는 열이 UNIQUE 인덱스의 일부라는 것을 의미하며, MUL은 주어진 값이 열에서 여러 번 나타날 수 있음을 의미합니다.

  • Default: 열에 기본값이 있는지 여부를 나타내며, 그렇다면 값은 무엇입니까?

  • Extra: AUTO_INCREMENT 등 얻을 수 있는 특정 열과 관련된 추가 정보를 나타냅니다.

SHOW CREATE TABLE: 테이블 구조를 SQL 문 형식으로 표시합니다.

SHOW CREATE TABLE 명령은 테이블 정보를 SQL 문 형식으로 표시합니다. DESCRIBE에 비해 SHOW CREATE TABLE은 더 풍부한 콘텐츠를 표시하며 테이블의 문자 인코딩을 볼 수 있고 g 또는 G 매개변수를 통해 표시 형식을 제어할 수도 있습니다.

SHOW CREATE TABLE의 구문 형식은 다음과 같습니다.

SHOW CREATE TABLE <表名>;

SHOW CREATE TABLE 문 끝(세미콜론 앞)에 g 또는 G 매개 변수를 추가하면 표시 형식이 변경됩니다.

[예제 2] tb_emp1 테이블의 상세 정보를 보려면 SHOW CREATE TABLE 문을 사용합니다. 한 번은 g로 끝나고 한 번은 사용하지 않습니다.

mysql> SHOW CREATE TABLE tb_emp1;
+---------+------------------------------------------------+
| Table   | Create Table                                   |
+---------+------------------------------------------------+
| tb_emp1 | CREATE TABLE `tb_emp1` (
  `id` int(11) DEFAULT NULL,
  `name` varchar(25) DEFAULT NULL,
  `salary` float DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 |
+---------+------------------------------------------------+
1 row in set (0.01 sec)

mysql> SHOW CREATE TABLE tb_emp1 \g;
+---------+------------------------------------------------+
| Table   | Create Table                                   |
+---------+------------------------------------------------+
| tb_emp1 | CREATE TABLE `tb_emp1` (
  `id` int(11) DEFAULT NULL,
  `name` varchar(25) DEFAULT NULL,
  `salary` float DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 |
+---------+------------------------------------------------+
1 row in set (0.00 sec)

SHOW CREATE TABLE G로 끝나는 SQL 문을 사용하고 실행 결과는 다음과 같습니다:

mysql> SHOW CREATE TABLE tb_emp1\G
*************************** 1. row ***************************
       Table: tb_emp1
Create Table: CREATE TABLE `tb_emp1` (
  `id` int(11) DEFAULT NULL,
  `name` varchar(25) DEFAULT NULL,
  `deptId` int(11) DEFAULT NULL,
  `salary` float DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
1 row in set (0.03 sec)

위 내용은 MySQL은 데이터베이스 아래의 테이블 구조를 쿼리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.