我是mysql的新手,我想知道在下面的查询中KEY(不是主键)是什么意思:
CREATE TABLE `users` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL default '',
`username` varchar(150) NOT NULL default '',
`email` varchar(100) NOT NULL default '',
`password` varchar(100) NOT NULL default '',
`activation` varchar(100) NOT NULL default '',
PRIMARY KEY (`id`),
KEY `idx_name` (`name`),
KEY `username` (`username`),
KEY `email` (`email`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=65 ;
也是ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=65 ;
KEY是一个索引:它就像一个库索引:更快地找到该列的值。你需要这个来连接和搜索。
ENGINE=MyISAM
表示您使用的引擎(这是默认值)。例如,如果你需要外键,那么你可能需要InnoDB。
DEFAULT CHARSET=utf8
是默认字符集。
AUTO_INCREMENT=65 ;
表示当前自动递增值为65
KEY
是INDEX
的同义词。如果您不熟悉它们,请参阅数据库索引
KEY通常是INDEX的同义词。
ENGINE=MyISAM
表示表的存储引擎。MySQL中有两种类型的存储引擎:事务性和非事务性。默认引擎为MySQL 5.5.5以上版本的InnoDB (MyISAM 5.5.5之前版本)
DEFAULT CHARSET=utf8
字符集支持,使您能够使用各种字符集存储数据。
AUTO_INCREMENT=65
表示当前主键id
的auto_increment值为65。
更多信息:-https://dev.mysql.com/doc/refman/5.7/en/create-table.html