Làm cách nào để hiển thị lược đồ của bảng trong cơ sở dữ liệu MySQL?


Câu trả lời:


535
describe [db_name.]table_name;

cho đầu ra được định dạng, hoặc

show create table [db_name.]table_name;

cho câu lệnh SQL có thể được sử dụng để tạo bảng.


2
Đây không phải là câu trả lời. OP đang tìm cách tìm ra phần "db_name" và giải pháp này giả định rằng bạn đã biết điều đó
Antonio Ortells

40
OP đã chấp nhận câu trả lời đó 7 năm trước. Tôi nghĩ rằng anh ấy đã hạnh phúc với câu trả lời đó.
Omry Yadan

Cơ sở dữ liệu không phải là một lược đồ.
Coder

1
hoặc desc [db_name.]table_name;ngắn gọn.
yakout

1
Để bảo vệ Antionio, một số hệ thống coi bộ sưu tập các bảng liên quan của họ là lược đồ chứ không phải cơ sở dữ liệu. Không chắc chắn đó hoặc tại sao.
dlamblin

108
SHOW CREATE TABLE yourTable;

hoặc là

SHOW COLUMNS FROM yourTable;

18

Bạn cũng có thể sử dụng tốc ký để mô tả như descmô tả bảng.

desc [db_name.] tên_bảng;

hoặc là

sử dụng db_name;
bảng tên desc;

Bạn cũng có thể sử dụng explainđể mô tả bảng.

giải thích [db_name.] tên_bảng;

Xem tài liệu chính thức

Sẽ cho đầu ra như:

+----------+-------------+------+-----+---------+-------+
| 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

Có lẽ câu hỏi cần phải chính xác hơn một chút ở đây về những gì được yêu cầu bởi vì nó có thể được đọc theo hai cách khác nhau. I E

  1. Làm cách nào để có được cấu trúc / định nghĩa cho một bảng trong mysql?
  2. Làm thế nào để tôi có được tên của lược đồ / cơ sở dữ liệu mà bảng này nằm trong?

Đưa ra câu trả lời được chấp nhận, OP rõ ràng dự định sẽ được giải thích theo cách đầu tiên. Đối với bất cứ ai đọc câu hỏi theo cách khác hãy thử

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

Câu trả lời của bạn cho điểm thứ hai đã giúp tôi cho những gì tôi đang tìm kiếm. Trình soạn thảo của tôi đã ném lỗi nói "Đối tượng không hợp lệ" trên bảng mà tôi đã cố sử dụng và tôi không biết gì về DB hoặc Lược đồ mà bảng rơi vào vì bảng đã được tạo bởi người khác, cho đến khi tôi nhận được thông tin này
mannedear

5
SELECT COLUMN_NAME, TABLE_NAME,table_schema
FROM INFORMATION_SCHEMA.COLUMNS;
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.