MariaDB
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> MariaDB

3 cách để đối chiếu một cột trong MariaDB

Dưới đây là ba cách để trả về đối chiếu của một cột trong MariaDB.

SHOW COLUMNS Tuyên bố

SHOW COLUMNS câu lệnh có FULL tùy chọn từ khóa đó, khi được sử dụng, sẽ xuất ra đối chiếu cột và nhận xét, cũng như các đặc quyền bạn có cho mỗi cột.

Dưới đây là một ví dụ về việc chạy câu lệnh này với một bảng có tên là Events :

SHOW FULL COLUMNS FROM Events;

Kết quả ví dụ:

+-----------+--------------+-------------------+------+-----+---------+----------------+---------------------------------+---------+
| Field     | Type         | Collation         | Null | Key | Default | Extra          | Privileges                      | Comment |
+-----------+--------------+-------------------+------+-----+---------+----------------+---------------------------------+---------+
| EventId   | int(11)      | NULL              | NO   | PRI | NULL    | auto_increment | select,insert,update,references |         |
| EventName | varchar(255) | latin5_turkish_ci | YES  |     | NULL    |                | select,insert,update,references |         |
+-----------+--------------+-------------------+------+-----+---------+----------------+---------------------------------+---------+

information_schema.columns Bảng

Một tùy chọn khác là truy vấn information_schema.columns bàn. Trong trường hợp này, chúng tôi có thể chỉ chọn các cột mà chúng tôi quan tâm:

SELECT
    column_name, 
    character_set_name, 
    collation_name 
FROM information_schema.columns
WHERE table_name = 'Events'
AND column_name = 'EventName';

Kết quả ví dụ:

+-------------+--------------------+-------------------+
| column_name | character_set_name | collation_name    |
+-------------+--------------------+-------------------+
| EventName   | latin5             | latin5_turkish_ci |
+-------------+--------------------+-------------------+

SHOW CREATE TABLE Tuyên bố

Một tùy chọn khác là sử dụng SHOW CREATE TABLE , trả về CREATE TABLE tuyên bố của bảng của chúng tôi.

Tuy nhiên, bộ ký tự và thông tin đối chiếu cho một cột chỉ được trả về nếu chúng khác với đối chiếu mặc định của bảng.

Dưới đây là một ví dụ về cách chạy câu lệnh này với một bảng có tên là Pets , trong đó các cột không khác với mặc định của bảng:

SHOW CREATE TABLE Pets;

Kết quả:

+-------+------------------------------+
| Table | Create Table                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
+-------+------------------------------+
| Pets  | CREATE TABLE `Pets` (
  `PetId` int(11) NOT NULL,
  `PetTypeId` int(11) NOT NULL,
  `OwnerId` int(11) NOT NULL,
  `PetName` varchar(60) NOT NULL,
  `DOB` date DEFAULT NULL,
  PRIMARY KEY (`PetId`),
  KEY `PetTypeId` (`PetTypeId`),
  KEY `OwnerId` (`OwnerId`),
  CONSTRAINT `pets_ibfk_1` FOREIGN KEY (`PetTypeId`) REFERENCES `PetTypes` (`PetTypeId`),
  CONSTRAINT `pets_ibfk_2` FOREIGN KEY (`OwnerId`) REFERENCES `Owners` (`OwnerId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+-------+-------------------------------+

Trong ví dụ này, thông tin đối chiếu không khác nhau, và do đó không có thông tin đối chiếu nào được trả lại cho bất kỳ cột nào.

Hãy thay đổi đối chiếu trên PetName cột:

ALTER TABLE Pets 
MODIFY PetName VARCHAR(255) 
    CHARACTER SET utf8 COLLATE utf8_spanish_ci NOT NULL;

Và chạy SHOW CREATE TABLE một lần nữa:

SHOW CREATE TABLE Pets;

Kết quả:

+-------+------------------------------+
| Table | Create Table                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
+-------+------------------------------+
| Pets  | CREATE TABLE `Pets` (
  `PetId` int(11) NOT NULL,
  `PetTypeId` int(11) NOT NULL,
  `OwnerId` int(11) NOT NULL,
  `PetName` varchar(255) CHARACTER SET utf8 COLLATE utf8_spanish_ci NOT NULL,
  `DOB` date DEFAULT NULL,
  PRIMARY KEY (`PetId`),
  KEY `PetTypeId` (`PetTypeId`),
  KEY `OwnerId` (`OwnerId`),
  CONSTRAINT `pets_ibfk_1` FOREIGN KEY (`PetTypeId`) REFERENCES `PetTypes` (`PetTypeId`),
  CONSTRAINT `pets_ibfk_2` FOREIGN KEY (`OwnerId`) REFERENCES `Owners` (`OwnerId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+-------+-------------------------------+

Lần này, chúng ta có thể thấy cài đặt bộ ký tự và đối chiếu mới dựa trên PetName cột.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Viết tối ưu hóa cho Qualcomm Centriq 2400 trong ứng viên phát hành MariaDB 10.3.5

  2. Có gì mới trong MariaDB Server 10.5?

  3. Mã hóa MariaDB đầy đủ lúc nghỉ và đang chuyển để bảo vệ dữ liệu tối đa - Phần thứ hai

  4. MariaDB JSON_SEARCH () Giải thích

  5. MariaDB 10.6 và NextCloud:Hàng COMPRESSED được mặc định chỉ đọc