0

私はmysqlデータベースを使用しています。登録テーブルがあります。テーブル構造はそのようなものです

CREATE TABLE IF NOT EXISTS `registration_doctors` 
(
  `id` int(12) NOT NULL AUTO_INCREMENT,
  `first_name` varchar(50) NOT NULL,
  `last_name` varchar(50) DEFAULT NULL,
  `password` varchar(50) NOT NULL,
  `email` varchar(50) NOT NULL,

  PRIMARY KEY (`id`),
  UNIQUE KEY `email` (`email`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

すでに主キーと 1 つの一意のキーを作成しています。列を主キーまたは一意のキーとして作成すると、それがインデックス キーとしても機能することがわかっています。電子メールをインデックス キーとして使用したいと考えています。電子メール列をインデックスとして追加する場合はそうではありません。それはすでに一意のキーであるためです。助けてください。

4

1 に答える 1

3

1.インデックスはテーブルの検索を高速化するのに役立つmysqlため、インデックスは優れていますが、インデックスはスマートな方法で使用する必要があります。たとえば、すべてのテーブルフィールドをインデックスとして追加すると、テーブルの検索が非常に遅くなります。

2. 主キーはインデックスの 1 つのタイプであるため、1 つのフィールドを主キーとして追加する場合、それもインデックスであるため、インデックスとして追加する必要はありません。

お役に立てれば幸いです。

于 2013-10-09T10:36:33.203 に答える