MySQL 데이터베이스에서 테이블의 스키마를 어떻게 표시합니까?


답변:


534
describe [db_name.]table_name;

형식화 된 출력 또는

show create table [db_name.]table_name;

테이블을 작성하는 데 사용할 수있는 SQL 문의 경우


2
이것은 답이 아닙니다. 영업 이익은 'DB_NAME'부분에서 그림을 찾고,이 솔루션은 이미 알고 가정합니다
안토니오 Ortells을

40
OP는 7 년 전에 그 대답을 받아 들였다. 나는 그가 그 대답에 만족했다고 생각합니다.
Omry Yadan

데이터베이스는 스키마가 아닙니다.
Coder

1
또는 desc [db_name.]table_name;짧게.
yakout

1
Antionio의 방어에서 일부 시스템은 관련 테이블 모음을 데이터베이스가 아닌 스키마로 참조합니다. 확실하지 않은 이유
dlamblin

108
SHOW CREATE TABLE yourTable;

또는

SHOW COLUMNS FROM yourTable;

18

desc표 설명 과 같이 설명을 위해 속기를 사용할 수도 있습니다 .

desc [db_name.] table_name;

또는

db_name을 사용하십시오.
디스크 table_name;

explain테이블 설명 에도 사용할 수 있습니다 .

설명 [db_name.] table_name;

공식 문서 보기

다음과 같은 출력을 제공합니다.

+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int(10)     | NO   | PRI | NULL    |       |
| name     | varchar(20) | YES  |     | NULL    |       |
| age      | int(10)     | YES  |     | NULL    |       |
| sex      | varchar(10) | YES  |     | NULL    |       |
| sal      | int(10)     | YES  |     | NULL    |       |
| location | varchar(20) | YES  |     | Pune    |       |
+----------+-------------+------+-----+---------+-------+

12

아마도 여기 에는 두 가지 다른 방식으로 읽을 있기 때문에 필요한 것이 무엇인지에 대한 질문이 약간 더 정확해야 것입니다. 즉

  1. mysql에서 테이블의 구조 / 정의를 어떻게 얻습니까?
  2. 이 테이블이 상주하는 스키마 / 데이터베이스의 이름을 어떻게 얻습니까?

수락 된 답변이 주어지면 OP는 분명히 첫 번째 방법으로 해석되도록 의도했습니다. 다른 방법으로 질문을 읽는 사람은

SELECT `table_schema` 
FROM `information_schema`.`tables` 
WHERE `table_name` = 'whatever';

두 번째 요점에 대한 당신의 대답은 내가 찾고있는 것을 나에게 도움이되었습니다. 내 편집기 내가 사용하려고 테이블에 "잘못된 개체"라는 오류를 던져 내가 테이블은 테이블이 이미 이미 다른 사람이 만든대로에 속하는 아래에있는 DB 또는 스키마에 대한 단서가 없다, 나는이 정보를 가지고 때까지
mannedear

5
SELECT COLUMN_NAME, TABLE_NAME,table_schema
FROM INFORMATION_SCHEMA.COLUMNS;
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.