Hướng dẫn how can i see the ddl of a table in mysql? - làm thế nào tôi có thể xem ddl của một bảng trong mysql?

13.7.7.10 & nbsp; Hiển thị câu lệnh bảng

SHOW CREATE TABLE tbl_name

Hiển thị câu lệnh CREATE TABLE tạo ra bảng được đặt tên. Để sử dụng câu lệnh này, bạn phải có một số đặc quyền cho bảng. Tuyên bố này cũng hoạt động với quan điểm.

mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

Kể từ MySQL 8.0.16, MySQL thực hiện các ràng buộc CHECK

mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
0 hiển thị chúng. Tất cả các ràng buộc CHECK được hiển thị dưới dạng các ràng buộc bảng. Đó là, một ràng buộc CHECK ban đầu được chỉ định là một phần của định nghĩa cột hiển thị như một mệnh đề riêng biệt không phải là một phần của định nghĩa cột. Thí dụ:

mysql> CREATE TABLE t1 [
         i1 INT CHECK [i1  0],      -- column constraint
         i2 INT,
         CHECK [i2 > i1],             -- table constraint
         CHECK [i2  0] NOT ENFORCED -- table constraint, not enforced
       ];

mysql> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
       Table: t1
Create Table: CREATE TABLE `t1` [
  `i1` int DEFAULT NULL,
  `i2` int DEFAULT NULL,
  CONSTRAINT `t1_chk_1` CHECK [[`i1`  0]],
  CONSTRAINT `t1_chk_2` CHECK [[`i2` > `i1`]],
  CONSTRAINT `t1_chk_3` CHECK [[`i2`  0]] /*!80016 NOT ENFORCED */
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
0 Báo giá bảng và tên cột theo giá trị của tùy chọn
mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
4. Xem Phần & NBSP; 5.1.8, Biến hệ thống máy chủ của Cameron.

Khi thay đổi công cụ lưu trữ của bảng, các tùy chọn bảng không áp dụng cho công cụ lưu trữ mới được giữ lại trong định nghĩa bảng để cho phép hoàn nguyên bảng với các tùy chọn được xác định trước đó cho công cụ lưu trữ ban đầu, nếu cần thiết. Ví dụ: khi thay đổi công cụ lưu trữ từ

mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
5 thành
mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
6, các tùy chọn cụ thể thành
mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
5, chẳng hạn như
mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
8, được giữ lại, như được hiển thị ở đây:

mysql> CREATE TABLE t1 [c1 INT PRIMARY KEY] ROW_FORMAT=COMPACT ENGINE=InnoDB;
mysql> ALTER TABLE t1 ENGINE=MyISAM;
mysql> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
       Table: t1
Create Table: CREATE TABLE `t1` [
  `c1` int NOT NULL,
  PRIMARY KEY [`c1`]
] ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT

Khi tạo một bảng có chế độ nghiêm ngặt bị vô hiệu hóa, định dạng hàng mặc định của công cụ lưu trữ được sử dụng nếu định dạng hàng được chỉ định không được hỗ trợ. Định dạng hàng thực tế của bảng được báo cáo trong cột

mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
9 để đáp ứng với
mysql> CREATE TABLE t1 [
         i1 INT CHECK [i1  0],      -- column constraint
         i2 INT,
         CHECK [i2 > i1],             -- table constraint
         CHECK [i2  0] NOT ENFORCED -- table constraint, not enforced
       ];

mysql> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
       Table: t1
Create Table: CREATE TABLE `t1` [
  `i1` int DEFAULT NULL,
  `i2` int DEFAULT NULL,
  CONSTRAINT `t1_chk_1` CHECK [[`i1`  0]],
  CONSTRAINT `t1_chk_2` CHECK [[`i2` > `i1`]],
  CONSTRAINT `t1_chk_3` CHECK [[`i2`  0]] /*!80016 NOT ENFORCED */
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
0.
mysql> CREATE TABLE t1 [
         i1 INT CHECK [i1  0],      -- column constraint
         i2 INT,
         CHECK [i2 > i1],             -- table constraint
         CHECK [i2  0] NOT ENFORCED -- table constraint, not enforced
       ];

mysql> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
       Table: t1
Create Table: CREATE TABLE `t1` [
  `i1` int DEFAULT NULL,
  `i2` int DEFAULT NULL,
  CONSTRAINT `t1_chk_1` CHECK [[`i1`  0]],
  CONSTRAINT `t1_chk_2` CHECK [[`i2` > `i1`]],
  CONSTRAINT `t1_chk_3` CHECK [[`i2`  0]] /*!80016 NOT ENFORCED */
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 cho thấy định dạng hàng được chỉ định trong câu lệnh CREATE TABLE.

Trong MySQL 8.0.30 trở lên,

mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
       Table: t
Create Table: CREATE TABLE `t` [
  `id` int NOT NULL AUTO_INCREMENT,
  `s` char[60] DEFAULT NULL,
  PRIMARY KEY [`id`]
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
0 bao gồm định nghĩa của khóa chính vô hình được tạo của bảng, nếu nó có khóa như vậy, theo mặc định. Bạn có thể khiến thông tin này bị triệt tiêu trong đầu ra của câu lệnh bằng cách đặt
mysql> CREATE TABLE t1 [
         i1 INT CHECK [i1  0],      -- column constraint
         i2 INT,
         CHECK [i2 > i1],             -- table constraint
         CHECK [i2  0] NOT ENFORCED -- table constraint, not enforced
       ];

mysql> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
       Table: t1
Create Table: CREATE TABLE `t1` [
  `i1` int DEFAULT NULL,
  `i2` int DEFAULT NULL,
  CONSTRAINT `t1_chk_1` CHECK [[`i1`  0]],
  CONSTRAINT `t1_chk_2` CHECK [[`i2` > `i1`]],
  CONSTRAINT `t1_chk_3` CHECK [[`i2`  0]] /*!80016 NOT ENFORCED */
] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
4. Để biết thêm thông tin, xem Phần & NBSP; 13.1.20.11, đã tạo ra các khóa chính vô hình.

DDL là viết tắt của ngôn ngữ định nghĩa dữ liệu. Để tạo bảng DDL thông qua truy vấn, bạn có thể sử dụng lệnh created show.

Cú pháp như sau

SHOW CREATE TABLE yourTableName;

Cú pháp trên là cụ thể của MySQL. Giả sử, chúng ta có một bảng có tên ‘ddloftablestudent.

Đầu tiên, hãy tạo một bảng với tên ‘ddloftablestudent. Truy vấn để tạo bảng như sau

mysql> create table DDLOfTableStudent
   -> [
   -> StudentId int,
   -> StudentFirstName varchar[100],
   -> StudentLastName varchar[100],
   -> StudentAddress varchar[200],
   -> StudentAge int,
   -> StudentMarks int
   -> ];
Query OK, 0 rows affected [0.84 sec]

Sử dụng cú pháp trên để biết DDL của bảng. Truy vấn như sau

mysql> SHOW CREATE TABLE DDLOfTableStudent;

Sau đây là đầu ra hiển thị DDL

+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table             | Create Table                                                                                                                                                                                                                                                                                                                                                   |
+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| DDLOfTableStudent | CREATE TABLE `ddloftablestudent` [`StudentId` int[11] DEFAULT NULL,`StudentFirstName` varchar[100] DEFAULT NULL,`StudentLastName` varchar[100] DEFAULT NULL,`StudentAddress` varchar[200] DEFAULT NULL,`StudentAge` int[11] DEFAULT NULL,`StudentMarks` int[11] DEFAULT NULL] ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
+-------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set [0.00 sec]

Cập nhật vào ngày 30 tháng 3 năm 2019 22:30:24

  • Câu hỏi và câu trả lời liên quan
  • Sự khác biệt giữa MySQL và SQL Server
  • Hiển thị máy chủ MySQL qua lệnh SQL?
  • Cơ sở dữ liệu Wars: MSSQL Server, Oracle PL/SQL và MySQL
  • Tải và dỡ một bảng trong SAP HANA bằng truy vấn SQL
  • Điều khoản giới hạn MySQL tương đương với SQL Server?
  • Sự khác biệt giữa Oracle và SQL Server
  • Trung bình và chế độ trong SQL Server
  • Tạo bảng truy vấn SQL trong SAP HANA
  • Tương đương của cột Nhận dạng SQL Server trong MySQL?
  • Làm thế nào để viết một giới hạn MySQL, trong SQL Server?
  • Tương đương của hàm SQL Server scope_identity [] trong mysql?
  • Sự khác biệt giữa ETL và ELT trong SQL Server
  • Sự khác biệt giữa SQL [ngôn ngữ truy vấn có cấu trúc] và T-SQL [Transact-SQL].
  • Máy chủ MySQL và các chương trình khởi động máy chủ
  • Làm thế nào để tạo ra một lệnh Creat Creating Bàn dựa trên một bảng hiện có trong MySQL?

Làm thế nào để bạn tìm thấy DDL của một bảng?

DDL là viết tắt của ngôn ngữ định nghĩa dữ liệu. Để tạo bảng DDL thông qua truy vấn, bạn có thể sử dụng lệnh created show. Hiển thị Tạo bảng của bạn tên của bạn; Cú pháp trên là cụ thể của MySQL.show create command. SHOW CREATE TABLE yourTableName; The above syntax is MySQL specific.

Làm thế nào tôi có thể thấy cấu trúc của một bảng trong mysql?

MySQL cũng cho phép lệnh các cột hiển thị cấu trúc bảng.Đó là một cách linh hoạt hơn để lấy thông tin cột của bảng ...
mysql> hiển thị các cột từ cơ sở dữ liệu_name.Table_Name ;.
mysql> hiển thị các cột từ TABLE_NAME trong cơ sở dữ liệu_name ;.

Lệnh DSC trong MySQL là gì?

DESC là dạng ngắn của lệnh mô tả và được sử dụng để giảm thông tin về một bảng như tên cột và các ràng buộc trên tên cột.Lệnh mô tả tương đương với lệnh sau - hiển thị các cột từ lệnh của bạn.the short form of DESCRIBE command and used to dipslay the information about a table like column names and constraints on column name. The DESCRIBE command is equivalent to the following command − SHOW columns from yourTableName command.

Làm cách nào để xem DDL của bảng trong SQL Server?

Sử dụng SQL Server Management Studio..
Trong Object Explorer, chọn bảng mà bạn muốn hiển thị các thuộc tính ..
Nhấp chuột phải vào bảng và chọn thuộc tính từ menu phím tắt.Để biết thêm thông tin, hãy xem Thuộc tính bảng - SSM ..

Bài Viết Liên Quan

Chủ Đề