Oto trzy sposoby na zwrócenie sortowania kolumny w MariaDB.
SHOW COLUMNS
Oświadczenie
SHOW COLUMNS
instrukcja ma opcjonalny FULL
słowo kluczowe, które, gdy zostanie użyte, wyświetli sortowanie kolumn i komentarze, a także uprawnienia, jakie masz dla każdej kolumny.
Oto przykład uruchomienia tej instrukcji w tabeli o nazwie Events
:
SHOW FULL COLUMNS FROM Events;
Przykładowy wynik:
+-----------+--------------+-------------------+------+-----+---------+----------------+---------------------------------+---------+ | 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 | | +-----------+--------------+-------------------+------+-----+---------+----------------+---------------------------------+---------+
Kolumny information_schema.columns
Tabela
Inną opcją jest zapytanie information_schema.columns
stół. W tym przypadku możemy wybrać tylko te kolumny, które nas interesują:
SELECT
column_name,
character_set_name,
collation_name
FROM information_schema.columns
WHERE table_name = 'Events'
AND column_name = 'EventName';
Przykładowy wynik:
+-------------+--------------------+-------------------+ | column_name | character_set_name | collation_name | +-------------+--------------------+-------------------+ | EventName | latin5 | latin5_turkish_ci | +-------------+--------------------+-------------------+
SHOW CREATE TABLE
Oświadczenie
Inną opcją jest użycie SHOW CREATE TABLE
, który zwraca CREATE TABLE
zestawienie naszego stołu.
Jednak zestaw znaków i informacje o sortowaniu dla kolumny są zwracane tylko wtedy, gdy różnią się od domyślnego sortowania tabeli.
Oto przykład uruchomienia tej instrukcji w tabeli o nazwie Pets
, gdzie kolumny nie różnią się od wartości domyślnych tabeli:
SHOW CREATE TABLE Pets;
Wynik:
+-------+------------------------------+ | 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 | +-------+-------------------------------+
W tym przykładzie informacje o sortowaniu nie różnią się, więc dla żadnych kolumn nie zostały zwrócone żadne informacje o sortowaniu.
Zmieńmy zestawienie na PetName
kolumna:
ALTER TABLE Pets
MODIFY PetName VARCHAR(255)
CHARACTER SET utf8 COLLATE utf8_spanish_ci NOT NULL;
I uruchom SHOW CREATE TABLE
ponownie:
SHOW CREATE TABLE Pets;
Wynik:
+-------+------------------------------+ | 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 | +-------+-------------------------------+
Tym razem możemy zobaczyć nowy zestaw znaków i ustawienia sortowania względem PetName
kolumna.