Dưới đây là bốn cách để lấy kiểu dữ liệu của một cột trong MySQL.
SHOW COLUMNS
Tuyên bố
SHOW COLUMNS
câu lệnh hiển thị thông tin về các cột trong một bảng hoặc dạng xem nhất định. Chúng ta có thể chuyển tên của bảng hoặc dạng xem để trả về thông tin trên các cột của nó:
SHOW COLUMNS FROM Pets;
Kết quả:
+-----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+---------+-------+ | PetId | int | NO | PRI | NULL | | | PetTypeId | int | NO | | NULL | | | OwnerId | int | NO | | NULL | | | PetName | varchar(60) | NO | | NULL | | | DOB | date | YES | | NULL | | +-----------+-------------+------+-----+---------+-------+
Chúng tôi có thể thu hẹp nó xuống chỉ còn một cột nếu được yêu cầu:
SHOW COLUMNS FROM Pets
WHERE Field = 'PetName';
Kết quả:
+---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | PetName | varchar(60) | NO | | NULL | | +---------+-------------+------+-----+---------+-------+
DESCRIBE
/ DESC
Tuyên bố
DESCRIBE
câu lệnh là một phím tắt cho SHOW COLUMNS FROM
cú pháp:
DESCRIBE Pets;
Kết quả:
+-----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+---------+-------+ | PetId | int | NO | PRI | NULL | | | PetTypeId | int | NO | | NULL | | | OwnerId | int | NO | | NULL | | | PetName | varchar(60) | NO | | NULL | | | DOB | date | YES | | NULL | | +-----------+-------------+------+-----+---------+-------+
Chỉ cần nối tên cột để thu hẹp nó thành một cột:
DESCRIBE Pets PetName;
Kết quả:
+---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | PetName | varchar(60) | NO | | NULL | | +---------+-------------+------+-----+---------+-------+
Bạn cũng có thể sử dụng các ký tự đại diện:
DESCRIBE Pets 'Pet%';
Kết quả:
+-----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+---------+-------+ | PetId | int | NO | PRI | NULL | | | PetTypeId | int | NO | | NULL | | | PetName | varchar(60) | NO | | NULL | | +-----------+-------------+------+-----+---------+-------+
Bạn cũng có thể rút ngắn nó thành DESC
:
DESC Pets PetName;
Kết quả:
+---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | PetName | varchar(60) | NO | | NULL | | +---------+-------------+------+-----+---------+-------+
information_schema.columns
Xem
information_schema.columns
chế độ xem chứa thông tin về các cột:
SELECT
COLUMN_NAME,
DATA_TYPE,
CHARACTER_MAXIMUM_LENGTH AS MAX_LENGTH,
CHARACTER_OCTET_LENGTH AS OCTET_LENGTH
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'Pets'
AND COLUMN_NAME = 'PetName';
Kết quả:
+-------------+-----------+------------+--------------+ | COLUMN_NAME | DATA_TYPE | MAX_LENGTH | OCTET_LENGTH | +-------------+-----------+------------+--------------+ | PetName | varchar | 60 | 240 | +-------------+-----------+------------+--------------+
Trong trường hợp này, tôi đã sử dụng DATABASE()
hàm trả về tên của cơ sở dữ liệu hiện tại. Ngoài ra, bạn có thể sử dụng tên của một cơ sở dữ liệu cụ thể.
mysqlshow
Tiện ích
mysqlshow
tiện ích hiển thị cấu trúc của cơ sở dữ liệu MySQL (cơ sở dữ liệu, bảng, cột và chỉ mục).
Tiện ích này được chạy trên chính nó. Nói cách khác, không chạy điều này từ bên trong MySQL. Thay vào đó, hãy mở một cửa sổ dòng lệnh / dòng lệnh mới và chạy nó từ đó.
Ví dụ:
mysqlshow -u root PetHotel Pets PetName
Kết quả:
+---------+-------------+--------------------+------+-----+---------+-------+---------------------------------+---------+ | Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment | +---------+-------------+--------------------+------+-----+---------+-------+---------------------------------+---------+ | PetName | varchar(60) | utf8mb4_0900_ai_ci | NO | | | | select,insert,update,references | | +---------+-------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
Trong ví dụ này, PetHotel
là tên của cơ sở dữ liệu, Pets
là bảng và PetName
là cột mà tôi quan tâm.
Tôi cũng đã cung cấp tên người dùng để kết nối. Tiện ích chấp nhận khá nhiều tùy chọn. Xem tài liệu MySQL để biết thêm thông tin.