Berikut adalah tiga cara untuk mengembalikan susunan kolom di MariaDB.
The SHOW COLUMNS
Pernyataan
SHOW COLUMNS
pernyataan memiliki FULL
opsional kata kunci, yang bila digunakan, akan menampilkan susunan kolom dan komentar, serta hak istimewa yang Anda miliki untuk setiap kolom.
Berikut adalah contoh menjalankan pernyataan ini terhadap tabel yang disebut Events
:
SHOW FULL COLUMNS FROM Events;
Contoh hasil:
+-----------+--------------+-------------------+------+-----+---------+----------------+---------------------------------+---------+ | 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
Tabel
Opsi lainnya adalah menanyakan information_schema.columns
meja. Dalam hal ini, kami hanya dapat memilih kolom yang kami minati:
SELECT
column_name,
character_set_name,
collation_name
FROM information_schema.columns
WHERE table_name = 'Events'
AND column_name = 'EventName';
Contoh hasil:
+-------------+--------------------+-------------------+ | column_name | character_set_name | collation_name | +-------------+--------------------+-------------------+ | EventName | latin5 | latin5_turkish_ci | +-------------+--------------------+-------------------+
The SHOW CREATE TABLE
Pernyataan
Pilihan lain adalah menggunakan SHOW CREATE TABLE
, yang mengembalikan CREATE TABLE
pernyataan meja kami.
Namun, kumpulan karakter dan informasi susunan untuk kolom hanya dikembalikan jika berbeda dari susunan default tabel.
Berikut adalah contoh menjalankan pernyataan ini terhadap tabel yang disebut Pets
, di mana kolom tidak berbeda dari default tabel:
SHOW CREATE TABLE Pets;
Hasil:
+-------+------------------------------+ | 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 | +-------+-------------------------------+
Dalam contoh ini, informasi pemeriksaan tidak berbeda, sehingga tidak ada informasi pemeriksaan yang dikembalikan untuk kolom apa pun.
Mari kita ubah susunan pada PetName
kolom:
ALTER TABLE Pets
MODIFY PetName VARCHAR(255)
CHARACTER SET utf8 COLLATE utf8_spanish_ci NOT NULL;
Dan jalankan SHOW CREATE TABLE
lagi:
SHOW CREATE TABLE Pets;
Hasil:
+-------+------------------------------+ | 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 | +-------+-------------------------------+
Kali ini kita dapat melihat set karakter baru dan pengaturan collation terhadap PetName
kolom.