MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

3 Cara Mendapatkan Kolasi Kolom di MariaDB

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.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Membandingkan Server MariaDB dengan MariaDB Cluster

  2. Bagaimana CAST() Bekerja di MariaDB

  3. MariaDB JSON_ARRAY_INSERT() Dijelaskan

  4. Bagaimana ABS() Bekerja di MariaDB

  5. Pencadangan Basis Data - Membandingkan MariaDB Mariabackup dan Percona Xtrabackup