sql - Oracle 保留唯一约束索引

标签 sql oracle indexing toad

当我删除 unique 列(只是唯一而非主键)约束时,Toad 会提示我是否要保留索引。

对我来说合乎逻辑的事情是删除索引,但为什么要保留它?如果我在以后的某个时间点使同一列唯一,是为了节省时间吗? (这让我感到困惑,因为旧索引可能会导致冲突)。

最佳答案

从 10g 开始,Oracle 在 ALTER TABLE...DROP CONSTRAINT 上引入了“KEEP INDEX”选项。从我读过的内容来看,它应该是相反的……因为除非您指定“KEEP INDEX”,否则它应该删除索引。所以我假设您通过 GUI 菜单删除了索引。

考虑到这一点,TOAD GUI 可能旨在提示您这样做。我想知道您是否真的运行了 ALTER TABLE...DROP CONSTRAINT 是否仍会提示您。我敢打赌“不会。”

关于sql - Oracle 保留唯一约束索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15743973/

相关文章:

python Pandas : How to select two equal column per row of a dataframe

MySQL True 与 False 优化

sql - 创建非唯一索引时出现唯一索引错误 - SQL Server

sql - 使用临时列过滤结果

sql - 插入带有列列表的并行 DML

sql - 在 SQL Server 中查找日期的简单选择查询问题

java - 我得到`DSRA9122E : com. ibm.ws.rsadapter.jdbc.WSJdbcConnection@d3t7e556 不包装任何类型为 oracle.jdbc.OracleConnection 的对象

java - hbm 文件中的 select 语句中的函数 `right` 出错

c++ - 指针索引 : Getting Unexpected Values

sql - 列数据类型中 BYTE 和 CHAR 的区别