建立索引有什么作用吗,能举个例子吗?

建立索引有什么作用吗,能举个例子吗?
还有,有关于键
还有触发器!

1.建议索引,可以提高检索速度。
但同样,如果建的太多会增加系统开销

2.键,主要是为了实现完整性,表之间的约束等。另外可以通过表间参照关系来提高数据库时间,空间的效率.
如产品表:No(主键),Name 销售表:No(外键),Price
>>产品表 No可保证相同编号的产品只出现一种。
>>如果不建参照,建成一个表也能实现:No,Name,Price....如果产品很多,而销售的数量很少,则表中许多price就是空,则会浪费很多间

3.触发器,触发器的作用是非常大的。它可以完成许多功能,保证数据库完整性,正确性等方面有许多作用。
比如在表1中插入一条记录,也想在表2中也插入一条记录。那么可以对表1建触发器:在插入时触发另一条向表2插入数据的sql语句.

但实际应用中有时这些也并完全是优点:

1. 如表间参照关系,许多人设计数据库都不设。因为有些情况(如删除记录,向上面讲“键”的例子,若要删除'产品表'的一条记录,而‘销售’表中又有记录,则不可以删除)----当然可以实现删除,但若想删除‘产品表’而又想保留‘销售表‘中数据,则要通过其它方法来实现。
若是不设键,则可以自由删除。当然其完整性要在程序中来保证。

2. 唯一索引(主键),在表特别大而插入特别频繁时会降低效率。因为每插入一条都会扫描一遍数据库。此时如果能保证记录是正确的 ,可以先删除唯一索引,插入后再建索引。这在时间上也 是划算的有时。比如我曾count过一个7000万的表,用了40多分钟。这时先删,再插,再建就很划算了。

当然,实际中还会遇到许多情况。就看你的重点在什么地方了。

啊,打了这么多,累死了,多多交流!!!
希望对你有所帮助!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-01
建立索引是为了更快地查询、检索。
建立主键和外键是为了保证数据有效性和完整性。
触发器是用于在对某表进行插入、删除、或更新后,根据增加、删除及改变的数据进行一些相关的操作。
只要打开帮助就可以查到有关的例子。帮助是取好的科书
这是微软件帮助文档中对索引的描述:
索引
与在任何关系数据库中一样,索引对数据仓库的性能具有重要作用。每个维度表都必须在主键上建立索引。在其它列(如标识层次结构级别的列)上,索引对某些专用查询的性能也很有用。
事实数据表必须在由维度表外键构成的组合主键上建立索引。
例:
给表AUTHORS的AU_ID列建立索引
CREATE
INDEX
au_id_ind
ON
authors
(au_id)
主键:
定义主键
定义主键来强制不允许空值的指定列中输入值的唯一性。如果在数据库中为表定义了主键,则可将该表与其它表相关,从而减少冗余数据。表只能有一个主键。
外键:
FOREIGN
KEY
约束
外键
(FK)
是用于建立和加强两个表数据之间的链接的一列或多列。通过将保存表中主键值的一列或多列添加到另一个表中,可创建两个表之间的链接。这个列就成为第二个表的外键。
当创建或更改表时可通过定义
FOREIGN
KEY
约束来创建外键。
第2个回答  2008-04-26
建立索引是为了更快地查询、检索。
建立主键和外键是为了保证数据有效性和完整性。
触发器是用于在对某表进行插入、删除、或更新后,根据增加、删除及改变的数据进行一些相关的操作。

只要打开帮助就可以查到有关的例子。帮助是取好的科书本回答被提问者采纳
相似回答