zoukankan      html  css  js  c++  java
  • Oracle外键需要建索引吗?

    关于Oracle中的外键,首先要说明一下。

    1. 除非已定义了父表主键或唯一键约束,否则oracle将不允许创建子表的外键约束。

    2. 在定义外键约束时,oracle不会自动创建索引,所以必须手动在与外键约束相关的列上创建索引。

    所以我们这里要研究的是否需要在子表中创建索引,因为父表中对应的列是一定有索引的。

    如果子表中的外键不创建索引,将导致两个问题。

    1. 影响性能。 如果子表外键没有创建索引,那么当父表查询关联子表时,子表将进行全表扫描。

    2. 影响并发。 如果子表外键没有创建索引,那么在子表进行DML操作时,将会锁住整个父表。

    所以,我们应该尽量考虑在外键上面创建索引。

  • 相关阅读:
    MySQL 对于千万级的大表要怎么优化?
    Spring Cloud中文社区
    什么是QPS,PV
    http://www.rabbitmq.com/documentation.html
    redis
    MySQL分区表
    linux命令综合
    Python-MRO
    Python3 错误和异常
    装饰器
  • 原文地址:https://www.cnblogs.com/jackhub/p/3323433.html
Copyright © 2011-2022 走看看