一般动作
一般来说,数据库中建索引有利有弊,就外键来说,Oracle数据库的建议如下:
1、更新父表主键,子表会被锁住
2、删除父表一行, 整个子表会被锁住
3、合并到父表,子表会被锁住。(9i,10G是这样,11G不会)。
1、没有从父表删除数据
2、没有更新父表主键
3、没有父表关联到子表
所以,一个典型的观点就是,凡是外键都创建索引,利大于弊。
Grails 中默认情况下是不会给外键创建索引的(某些数据库会),因此,BroToolkit 中添加了配置:
该配置默认为 false,即不自动创建外键索引,如果在 Config.groovy 将其设为 true,则会自动在所有外键上创建名称前缀为 IFK_ 的索引。