首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql索引更改

mysql索引更改
EN

Stack Overflow用户
提问于 2012-01-03 01:10:19
回答 1查看 73关注 0票数 2

我将用php (在mysql数据库中)编写搜索脚本,所以我将使用索引(以提高速度)。我有这样的html表单

HTML:

代码语言:javascript
复制
<select name="search">
    <option value="name">Name</option>
    <option value="surname">Surname</option>
    <option value="etc">Etc.</option>
</select>

所以我会像这样写mysql索引,例如,如果选择了=>,我想用name列在数据库中创建索引,结果之后我想删除索引(这是php的一切),我会对每个select选项都这样做,所以我感兴趣的是这样是正确的吗,如果不是,我该怎么做呢?另外,该表不会被更新,但它还可以添加一些其他数据,在这种情况下,我会在索引方面遇到问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-03 01:16:25

如果我没理解错的话,你的方法是每次搜索一列时在该列上创建一个新的索引?

这绝对是不正确的,如果表中有任何实际数量的数据,创建索引的过程可能会非常慢。创建索引一次。然后,当搜索列字段时,它们将始终在那里。特别是如果像你说的“表不会被更新”。我从来没有遇到过以编程方式创建然后删除索引是正确方法的情况。

值得注意的是,当您创建一个新索引时,MySQL会构建一个单独的信息块,然后每次在表中进行更改时都必须更新该信息块。如果表中的数据量非常大,并且经常进行更改(强制索引不断更新),则可能会遇到一些性能问题。然而,我感觉这不是你的情况。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8703443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档