100分,请问“数据库表建立索引的好处有哪些”,谢谢了,请说细些。
如题
------解决方案--------------------加快查询速度,唯一索引可以确定唯一性等等,但不是索引越多越好
对于查询表越多速度越快,对于经常要更新的表,如果多了,反而会慢,因为要插入之前,先要扫描下索引
------解决方案--------------------到Baidu,google搜索一下,就知道了
------解决方案--------------------3为楼上的都正解
------解决方案--------------------一会鱼就来给你说了!你只管问他就行!
------解决方案--------------------加快查询速度
当你去图书馆去找书的时候,管理员绝对不会是手工一本一本给你找的,他肯定是根据书名,作者,出版社,类别等去找,而这些就是我们建立索引的依据,也是尽快找到书的方法
------解决方案--------------------如果在字典里面 新增加一个汉字
那么在部首索引里面 也应该增加他的部首索引吧?
这和数据库原理一样
这样插入就慢了
------解决方案--------------------..............那當然,索引也分很多種,要根據情況建立不同的索引。你最好鏈接一下索引遍歷的方式!
------解决方案--------------------把数据库看作一本书,把索引看作书的目录,这样查找就比较方便,快捷了
------解决方案--------------------那么又该如何应对这种情况呢??
======
这又是一个实践性的具体问题了,并且良好的设计需要丰富的经验,
一般的指导原则是,对经常在 WHERE 子句中出现的字段建立索引,
至于建立索引之后,导致的更新/删除的性能损失,就依你的需求而言了,很多时候用户更在意的是查询性能上面,具体需要一个 tradeoff 的过程
另外,
对于 SQL Server,索引有一个类型为,【聚集索引】(一个表只能有一个,一种物理索引,此种索引最高效),通常我会选择将其应用在外键上,而表示主键上(通过 SQL server 企业管理器建立主键的默认方式)
------解决方案--------------------索引本身还建立索引???晕了
=====
操作系统 没学好?
与 文件系统 的 索引 原理是一样的,
对于商品化数据库,具体的实现策略并不一样,
比如 Oracle 不象 SQL server,就没有 【聚集索引】
------解决方案--------------------索引本身还建立索引
=======
索引 是有数据库引擎自己内部维护了,对多也只有几个参数可是设置了,
比如
MS SQL 有【填充因子】
Oracle 还可以为 索引 建立专门的物理磁盘分区
....
具体的商品化数据库都不策略,特性都不一样,
通常 DBA 才需要了解这么深刻,当然对于我们, DBA 和 programmer 又没有分那么清 ....
要熟悉,只要翻相关的数据库资料,
别忘了,官方的帮助文件 ....
------解决方案--------------------上面带星星的高手们说得非常正确啊
------解决方案--------------------以下针对 MS SQL ->
将通配符作为文字使用
可以将通配符模式匹配字符串用作文字字符串,方法是将通配符放在括号中。下表显示了使用 LIKE 关键字和 [ ] 通配符的示例。
符号 含义
LIKE '5[%] ' 5%
LIKE '[_]n ' _n
LIKE '[a-cdf] ' a、b、c、d 或 f
LIKE '[-acdf] ' -、a、c、d 或 f
LIKE '[ [ ] ' [
LIKE '] ' ]
LIKE 'abc[_]d% ' abc_d 和 abc_de
LIKE 'abc[def] ' abcd、abce 和 abcf
------解决方案--------------------即用 [] 包含需要转义的字符
对于
LIKE '[a-cdf] ' a、b、c、d 或 f
是【模式匹配】的用法
------解决方案--------------------可以就全值匹配来解决更新问题的,上网上找一些财务软件开发的文章,会给你一些提示的。