mysql建立索引/刪除索引操做

-- 1.ALTER 建立索引 -- table_name表名,column_list列名,index_name索引名code

-- 建立index索引 ALTER TABLE table_name ADD INDEX index_name (column_list) -- 建立惟一索引 ALTER TABLE table_name ADD UNIQUE (column_list) -- 建立主鍵索引 ALTER TABLE table_name ADD PRIMARY KEY (column_list)索引

-- 2.CREATE 建立索引(不能建立主鍵索引) -- table_name表名,column_list列名,index_name索引名it

-- 建立index索引 CREATE INDEX index_name ON table_name (column_list) -- 建立惟一索引 CREATE UNIQUE INDEX index_name ON table_name (column_list)io

-- 3.刪除索引 -- table_name表名,column_list列名,index_name索引名table

-- 刪除index索引 ALTER TABLE table_name DROP INDEX index_name DROP INDEX index_name ON talbe_name -- 刪除主鍵索引 ALTER TABLE table_name DROP PRIMARY KEY -- 刪除惟一索引 ALTER TABLE table_name DROP INDEX column_list; ALTER TABLE table_name DROP INDEX index_name DROP INDEX index_name ON talbe_name方法

-- 4.查看索引 SHOW INDEX FROM table_name SHOW KEYS FROM table_name統計

-- table:表的名稱。 -- Non_unique:若是索引不能包括重複詞,則爲0。若是能夠,則爲1。 -- Key_name:索引的名稱。 -- Seq_in_index:索引中的列序列號,從1開始。 -- Column_name:列名稱。 -- Collation:列以什麼方式存儲在索引中。在MySQL中,有值‘A’(升序)或NULL(無分類)。 -- Cardinality:索引中惟一值的數目的估計值。經過運行ANALYZE TABLE或myisamchk -a能夠更新。基數根據被存儲爲整數的統計數據來計數,因此即便對於小型表,該值也沒有必要是精確的。基數越大,當進行聯合時,MySQL使用該索引的機會就越大。 -- Sub_part:若是列只是被部分地編入索引,則爲被編入索引的字符的數目。若是整列被編入索引,則爲NULL。 -- Packed:指示關鍵字如何被壓縮。若是沒有被壓縮,則爲NULL。 -- Null:若是列含有NULL,則含有YES。若是沒有,則該列含有NO。 -- Index_type:用過的索引方法(BTREE, FULLTEXT, HASH, RTREE)。 -- Comment:數據

-- 5.聯合索引 -- 5.1 建立聯合索引 CREATE TABLE goods ( id varchar(20) NOT NULL, name varchar(20) NOT NULL COMMENT '商品名稱', price varchar(20) NOT NULL COMMENT '商品價格', PRIMARY KEY (id,name) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- 5.2 給現有表添加聯合索引 ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(column_list1,column_list2); -- 5.3 刪除聯合索引 ALTER TABLE table_name DROP PRIMARY KEYtab

相關文章
相關標籤/搜索