| MYSQL ERROR 1071 (42000): Specified key was too long; max key length is 767 byte  
 drop table if exists test;  
create table test(test varchar(767) primary key)charset=latin5;  -- 成功 
drop table if exists test; 
create table test(test varchar(768) primary key)charset=latin5;  -- 错误
-- ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes
 
drop table if exists test; 
create table test(test varchar(383) primary key)charset=GBK;  -- 成功 
drop table if exists test; 
create table test(test varchar(384) primary key)charset=GBK;  -- 错误
 -- ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes 
drop table if exists test;  
create table test(test varchar(255) primary key)charset=UTF8;  -- 成功 
drop table if exists test;
create table test(test varchar(256) primary key)charset=UTF8;  -- 错误  
-- ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes   MySQL的varchar主键只支持不超过768个字节 或者 768/2=384个双字节 或者 768/3=256个三字节的字段 ,而 GBK是双字节的,UTF-8是三字节的。  MySQL ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes 的原因分析   查看mysql表结构的方法有三种:   1、mysql> desc tablename;  # 查看表的结构  
 +------------------+---------------------+------+-----+---------------------+----------------+  
| Field            | Type                | Null | Key | Default             | Extra          |  
+------------------+---------------------+------+-----+---------------------+----------------+  
| id               | int(11)             | NO   | PRI | NULL                | auto_increment |  
| title            | text                | NO   |     | NULL                |                |  
| content          | text                | NO   |     | NULL                |                |  
| ordering         | int(11)             | NO   |     | 0                   |                |  
| position         | varchar(50)         | YES |     | NULL                |                |  
| checked_out      | int(11) unsigned    | NO   |     | 0                   |                |  
| checked_out_time | datetime            | NO   |     | 0000-00-00 00:00:00 |                |  
| published        | tinyint(1)          | NO   | MUL | 0                   |                |  
| module           | varchar(50)         | YES | MUL | NULL                |                |  
| numnews          | int(11)             | NO   |     | 0                   |                |  
| access           | tinyint(3) unsigned | NO   |     | 0                   |                |  
| showtitle        | tinyint(3) unsigned | NO   |     | 1                   |                |  
| params           | text                | NO   |     | NULL                |                |  
| iscore           | tinyint(4)          | NO   |     | 0                   |                |  
| client_id        | tinyint(4)          | NO   |     | 0                   |                |  
| control          | text                | NO   |     | NULL                |                |  
+------------------+---------------------+------+-----+---------------------+----------------+   2、mysql> show create table tablename;  # 查看创建表的sql语句  
 mysql> show create table jos_modules;  jos_modules | CREATE TABLE `jos_modules` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `title` text NOT NULL,  `content` text NOT NULL,  `ordering` int(11) NOT NULL DEFAULT '0',  `position` varchar(50) DEFAULT NULL,  `checked_out` int(11) unsigned NOT NULL DEFAULT '0',  `checked_out_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',  `published` tinyint(1) NOT NULL DEFAULT '0',  `module` varchar(50) DEFAULT NULL,  `numnews` int(11) NOT NULL DEFAULT '0',  `access` tinyint(3) unsigned NOT NULL DEFAULT '0',  `showtitle` tinyint(3) unsigned NOT NULL DEFAULT '1',  `params` text NOT NULL,  `iscore` tinyint(4) NOT NULL DEFAULT '0',  `client_id` tinyint(4) NOT NULL DEFAULT '0',  `control` text NOT NULL,  PRIMARY KEY (`id`),  KEY `published` (`published`,`access`),  KEY `newsfeeds` (`module`,`published`)  ) ENGINE=MyISAM AUTO_INCREMENT=145 DEFAULT CHARSET=utf8   3、mysql>select COLUMN_NAME from information_schema.COLUMNS where table_name = 'tablename' and TABLE_SCHEMA ='databasename';      # 查看列名  
 +----------------------------+| COLUMN_NAME                +----------------------------+| id                                           | distinct_name                     | offical_domain                     | offical_ip                             | offical_ip_loc                      | similar_domain_regex         | title_keywords                      | content_sensitive_keywords| out_link_offical_rate            | icp_code                            | reserved_one                     | reserved_two                    | reserved_three                  | update_time                       +----------------------------+    |