如何检查Oracle中的索引
发布时间:2020-12-12 13:49:16 所属栏目:百科 来源:网络整理
导读:我正在为依赖于Oracle数据库的产品编写架构升级脚本.在一个区域中,我需要在表上创建一个索引 – 如果该索引不存在.有没有一个简单的方法来检查我知道Oracle脚本中的名称的索引的存在? 这将与SQL Server中的类似: IF NOT EXISTS(SELECT * FROM SYSINDEXES W
我正在为依赖于Oracle数据库的产品编写架构升级脚本.在一个区域中,我需要在表上创建一个索引 – 如果该索引不存在.有没有一个简单的方法来检查我知道Oracle脚本中的名称的索引的存在?
这将与SQL Server中的类似: sqlplus不支持IF …,但是,您必须使用匿名PL / SQL块,这意味着EXECUTE IMMEDIATE可以执行DDL. DECLARE i INTEGER; BEGIN SELECT COUNT(*) INTO i FROM user_indexes WHERE index_name = 'MYINDEX'; IF i = 0 THEN EXECUTE IMMEDIATE 'CREATE INDEX myIndex ...'; END IF; END; / 编辑:如所指出的那样,Oracle将非引号对象名称全部存储在大写中. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |