2012-05-01 69 views
1

更多my previous question(qv)...如何删除索引?

我已经创建了表格并填充了数据。如何将前缀长度设置为非常大的值或将其全部删除,以便我没有这个问题?永远不会超过几千行,只有这个应用程序运行在专用PC上,所以性能不是问题。

解决方案,请为无论是phpMyAdmin的,或者只是MySQL命令行。


更新:我可以删除这个指数(或使其无限长)?

嗯,我宁愿保持唯一索引,如果我能。那么,如何让它无限长?

或者我应该重新定义我的文本字段是var_char有限制的长度? (我知道的主键的最大可能lngth)

mysql> describe tagged_chemicals; 
+-------------+---------+------+-----+---------+-------+ 
| Field  | Type | Null | Key | Default | Extra | 
+-------------+---------+------+-----+---------+-------+ 
| bar_code | text | NO |  | NULL |  | 
| rfid_tag | text | NO | UNI | NULL |  | 
| checked_out | char(1) | NO |  | N  |  | 
+-------------+---------+------+-----+---------+-------+ 
3 rows in set (0.04 sec) 

回答

1

它可能会是这样的

CREATE INDEX part_of_name ON customer (name(10)); 

从创建索引的文档http://dev.mysql.com/doc/refman/5.0/en/create-index.html

凡在你的情况下,rfid_tag是长度为20.

+0

+1我甚至可以在表创建完成后执行此操作? – Mawg

+0

有没有一种语法可以说:“不要限制索引,只要最长的条目?” – Mawg

+1

“前缀支持和前缀长度(支持的地方)是依赖于存储引擎的。例如,对于MyISAM表,前缀长度可以长达1000个字节,对于InnoDB表,前缀长度可以长达767个字节。”上面的文档链接引用。 – geoB