欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MYSQLl数据库主键设置长度控制

程序员文章站 2022-05-13 15:34:19
...

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 1、出现的问题? JEECMS套件(jeecms-2012-sp1)中有一个jeecms-db-2012-sp1.sql文件,文件里面有一张"jc_file"的表,表里面有一个字段"file_path"的长度是255,在安装此套件的过程中会报错,具体错误

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  1、出现的问题?

  JEECMS套件(jeecms-2012-sp1)中有一个jeecms-db-2012-sp1.sql文件,文件里面有一张"jc_file"的表,表里面有一个字段"file_path"的长度是255,在安装此套件的过程中会报错,具体错误如下:

  Query : CREATE TABLE `jc_file` ( `file_path` varchar(192) NOT NULL default '' COMMENT '文件路径', `file_name` varchar(255) defau…

  Error Code : 1071

  Specified key was too long; max key length is 767 bytes

  Execution Time : 00:00:00:000

  Transfer Time : 00:00:00:000

  Total Time : 00:00:00:000

  错误的意思是,特殊键的字节长度不能超过767.

  2、解决方案:

  经测试,只要将"file_path" 的字段长度设置在192以内就可以了,191就可以。

  3、附原表结构

  CREATE TABLE `jc_file` (

  `file_path` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '文件路径',

  `file_name` VARCHAR(255) DEFAULT '' COMMENT '文件名字',

  `file_isvalid` TINYINT(1) NOT NULL DEFAULT '0' COMMENT '是否有效',

  `content_id` INT(11) DEFAULT NULL COMMENT '内容id',

  PRIMARY KEY (`file_path`),

  KEY `fk_jc_file_content` (`content_id`)

  ) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='文件资源表';

MYSQLl数据库主键设置长度控制