Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

sp_help trong MySQL để hiển thị kiểu dữ liệu trường và ràng buộc khóa ngoại?

Trong MySQL, bạn có thể đạt được chức năng tương tự sp_help (trong SQL Server) bằng cách sử dụng lệnh SHOW CREATE.

Trường hợp 1: Xem cấu trúc bảng

Cú pháp để xem định nghĩa tạo bảng:

SHOW CREATE TABLE ten_bang_cua_ban;

Trường hợp 2: Xem cấu trúc thủ tục lưu trữ

Cú pháp để xem định nghĩa tạo thủ tục:

SHOW CREATE PROCEDURE ten_thu_tuc_cua_ban;

Ví dụ minh họa

Đầu tiên, tạo một bảng mẫu:

mysql> CREATE TABLE DemoTable (
    EmployeeId INT NOT NULL AUTO_INCREMENT,
    EmployeeFirstName VARCHAR(40) NOT NULL,
    EmployeeLastName VARCHAR(40) NOT NULL,
    EmployeeAge INT,
    EmployeeCountryName VARCHAR(40),
    EmployeeCityName VARCHAR(40),
    PRIMARY KEY(EmployeeId),
    UNIQUE KEY(EmployeeFirstName, EmployeeCityName)
);

Thực hiện lệnh SHOW CREATE TABLE cho bảng vừa tạo:

mysql> SHOW CREATE TABLE DemoTable;

Kết quả trả về sẽ hiển thị tên trường, kiểu dữ liệu và các ràng buộc:

+---------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table         | Create Table                                                                                                                                                                                                                                                                                                                                                   |
+---------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| DemoTable     | CREATE TABLE `demotable` (
  `EmployeeId` int(11) NOT NULL AUTO_INCREMENT,
  `EmployeeFirstName` varchar(40) COLLATE utf8_unicode_ci NOT NULL,
  `EmployeeLastName` varchar(40) COLLATE utf8_unicode_ci NOT NULL,
  `EmployeeAge` int(11) DEFAULT NULL,
  `EmployeeCountryName` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL,
  `EmployeeCityName` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`EmployeeId`),
  UNIQUE KEY `EmployeeFirstName` (`EmployeeFirstName`,`EmployeeCityName`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
+---------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.03 sec)

Lưu ý: Lệnh SHOW CREATE TABLE cũng hiển thị engine lưu trữ, charset và collation mặc định của bảng. Để xem khóa ngoại, bạn có thể dùng SHOW CREATE TABLE kết hợp với INFORMATION_SCHEMA.KEY_COLUMN_USAGE hoặc SHOW TABLE STATUS.