当前位置: 首页 > 图文教程 > 数据库 > MYSQL > MySQL一个索引最多有多少个列?真实的测试例子

MYSQL
SQL Server数据库对上亿表的操作
MyISAM和InnoDB的异同
带你轻松的接触用于Mysql元数据的UTF8
校对确定 较为复杂的一些特殊情况
带你轻松接触Mysql校对效果的示例
快速的掌握MySQL支持的操作系统
教你快速掌握Mysql ENUM和SET约束
MaxDB和MySQL之间的特性差异
带你轻松接触Mysql事务和原子操作
怎样在ANSI模式下运行MySQL
怎样使MySQL在攻击者面前保持安全
mysql_data_seek函数详解
如何解决MYSQL不能自动启动的问题
MySQL5.1新特性 日志的增强
一个实例讲解MySQL查询优化
MySQL_常用查询的例子
学习使用数据库MySQL
管理控制:MYSQL数据库常用命令列表
让新装上的MYSQL数据库更加安全
初学者必读 MySQL数据库常见问题汇总

MYSQL 中的 MySQL一个索引最多有多少个列?真实的测试例子


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 180 ::
收藏到网摘: n/a

MySQL一个索引最多有多少个列?下面是具体的实现代码。 最多16列。
create table test (
f1 int,
f2 int,
f3 int,
f4 int,
f5 int,
f6 int,
f7 int,
f8 int,
f9 int,
f10 int,
f11 int,
f12 int,
f13 int,
f14 int,
f15 int,
f16 int,
f17 int
);
create index idx_test_16 on test (f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16);
create index idx_test_17 on test (f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17);
运行结果如下:

mysql> create table test (
-> f1 int,
-> f2 int,
-> f3 int,
-> f4 int,
-> f5 int,
-> f6 int,
-> f7 int,
-> f8 int,
-> f9 int,
-> f10 int,
-> f11 int,
-> f12 int,
-> f13 int,
-> f14 int,
-> f15 int,
-> f16 int,
-> f17 int
-> );
Query OK, 0 rows affected (0.06 sec)
mysql>
mysql> create index idx_test_16 on test (f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16);
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> create index idx_test_17 on test (f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17);
ERROR 1070 (42000): Too many key parts specified; max 16 parts allowed
mysql>