2011-10-01 68 views

回答

26

你可以使用SHOW FULL COLUMNS FROM tablename返回列整理,例如用於表「賬戶」有特殊整理在列「名稱」

mysql> SHOW FULL COLUMNS FROM accounts; 
+----------+--------------+-------------------+------+-----+---------+----------+ 
| Field | Type   | Collation   | Null | Key | Default | Extra | 
+----------+--------------+-------------------+------+-----+---------+----------| 
| id  | int(11)  | NULL    | NO | PRI | NULL | auto_inc | 
| name  | varchar(255) | utf8_bin   | YES |  | NULL |   | 
| email | varchar(255) | latin1_swedish_ci | YES |  | NULL |   | 
... 

或者你可以使用SHOW CREATE TABLE tablename這會導致類似

mysql> SHOW CREATE TABLE accounts; 
CREATE TABLE `accounts` (
`id` int(11) NOT NULL AUTO_INCREMENT, 
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL, 
`email` varchar(255) DEFAULT NULL, 
... 
聲明
+0

僅供參考,SHOW CREATE TABLE只顯示列設置,如果不同的表默認COLLATE。此外,如果與缺省值相同,表格默認值不會顯示。 – maxhugen

2

SHOW CREATE TABLE表名會告訴你每個列的排序規則以及默認排序規則

4

如果你想爲只是特定的列(與子查詢可能使用)整理...

select COLLATION_NAME 
from information_schema.columns 
where TABLE_SCHEMA = 'tableschemaname' 
and TABLE_NAME = 'tablename' 
and COLUMN_NAME = 'fieldname';