精华内容
下载资源
问答
  • oracle唯一索引

    万次阅读 2018-01-03 11:38:43
    1 oracle支持唯一索引。可以理解为唯一约束。用来控制和约束需要插入的表中字段。(主键自动为唯一约束,且不为空   )。 2 唯一索引,可以理解为:唯一约束,用来控制表中字段的。例如表中有两个或多个字段...
    1 oracle支持唯一索引。可以理解为唯一约束。用来控制和约束需要插入的表中字段。(主键自动为唯一约束,且不为空
     
    )。


    2 唯一索引,可以理解为:唯一约束,用来控制表中字段的。例如表中有两个或多个字段。插入数据库时,不希望这些字段值出现重复。则可以将这些字段添加为唯一索引。unique 表示唯一
    如:create  unique index user_password_index on users(username,password);
    格式:create unique index 唯一索引名 on 表名(字段1,字段2..)。
    这样进行插入时,先检查唯一索引值是否出现重复。如果出现重复则报错。


    3 唯一索引也能删除。通过drop index  索引名即可。
    如:drop index user_password_index
    格式:drop index  索引名


    4 唯一索引的字段也可以出现null。而主键不能出现null.




    综述:唯一索引用来控制表中的字段不出现重复的。对表中的字段进行约束。
    例子:
    select * from USERS


    create  unique index user_password_index on users(username,password);
    select * from users
    insert into users values(101,'admin','888888',1)
    insert into users values(102,'xcl','123',1)--如果数据库中出现重复了,则报错
    drop index user_password_index
    展开全文
  • ORACLE创建唯一索引

    2020-05-12 18:34:45
    oracle创建唯一索引 Create UNIQUE Index PK_INSTANCE_...在删除时这两者也有一定的区别,删除唯一约束时可以只删除约束而不删除对应的索引,所以对于的列还是必须唯一的,而删除了唯一索引的话就可以插入不唯一的值。
    • oracle创建唯一索引
    Create UNIQUE Index PK_INSTANCE_ID on TB_DD_APPROVAL_OUT
    (
     INSTANCE_ID
    )
    
    
    • oracle基于多列的唯一性约束
     alter table tb_products  
     add constraint  tb_products_u1  
     unique (product_id,product_name);  
    
    • 基于单列的唯一性约束示例
    create table tb_supplier  
    (  
      supplier_id          number not null  
     ,supplier_name        varchar2(50)  
     ,contact_name         varchar2(50)  
     ,CONSTRAINT tb_supplier_u1 UNIQUE (supplier_id)--创建表时创建唯一性约束  
    );  
    

    oracle创建唯一约束与创建唯一索引有所不

    • 创建唯一约束会在Oracle中创建一个Constraint,同时也会创建一个该约束对应的唯一索引。

    • 创建唯一索引只会创建一个唯一索引,不会创建Constraint。
      也就是说其实唯一约束是通过创建唯一索引来实现的。对于开发人员来说这两者有什么区别吗?好像没有。都是不能插入重复的值。在删除时这两者也有一定的区别,删除唯一约束时可以只删除约束而不删除对应的索引,所以对于的列还是必须唯一的,而删除了唯一索引的话就可以插入不唯一的值。

    展开全文
  • 实际开发中,在创建表主键约束的时候,通常会级联创建唯一索引。... 可以发现主键被删除了,但是唯一索引依旧存在,因此如果插入重复的数据,还是会报违反约束的错误 处理方法:  在删除约束的时候需要显示的

    实际开发中,在创建表主键约束的时候,通常会级联创建唯一索引。

    假设现在需要在联合主键中增加一个字段SO_COMPANY_CDE,刚开始的做法是删除主键约束,再重新创建联合主键

    alter table CBS_AG_CNTR_MTHD drop CONSTRAINT PK_CBS_AG_CNTR_MTHD cascade;

    --确认约束和索引的删除情况

      可以发现主键被删除了,但是唯一索引依旧存在,因此如果插入重复的数据,还是会报违反约束的错误

    处理方法:

      在删除约束的时候需要显示的指定drop index选项来完成序偶因的级联删除,再级联创建主键和索引即可

    --删除主键级联删除唯一索引
    alter table CBS_AG_CNTR_MTHD drop CONSTRAINT PK_CBS_AG_CNTR_MTHD cascade drop index;

    --创建主键级联创建唯一索引

    alter table CBS_AG_CNTR_MTHD
    add constraint PK_CBS_AG_CNTR_MTHD primary key (CNTR_PACKG_UUID, SEQ_NUM, AGENCY_CDE, FEE_TYPE,SO_COMPANY_CDE)
    using index
    tablespace TS_CBS_TEST
    pctfree 10
    initrans 2
    maxtrans 255
    storage
    (
    initial 64K
    next 1M
    minextents 1
    maxextents unlimited
    );

     

     

     

    展开全文
  • 2、主键唯一索引,不允许单独删除而保留主键约束,但是可以保留唯一索引单独删除主键约束。因此要想删除唯一索引,只能先删除主键约束,执行如下命令: ALTER TABLE VIEW_MEDICAL_RECORD_BASE_BAK DROP ...

    1、在删除索引或主键时,提示ORA-02429:无法删除用于强制唯一/主键的索引,如下图所示:

    2、主键唯一索引,不允许单独删除而保留主键约束,但是可以保留唯一索引单独删除主键约束。因此要想删除引唯一索引,只能先删除主键约束,PK_V_M_RECORD_BASE为主键或索引名,执行如下命令:

    ALTER TABLE MEDICAL_RECORD DROP CONSTRAINT PK_V_M_RECORD_BASE

    3、然后在删除主键即可。

    展开全文
  • 创建索引(如果字段为大写,请大写) CREATE INDEX index_p_exam_subject_id_name ON p_exam (SUBJECT_ID,EXAM_NAME); 删除索引drop index index_...创建唯一索引 CREATE UNIQUE INDEX uni_cet4_112_zkzh_kssfz O...
  • oracle 唯一 索引 约束 创建 删除

    万次阅读 2012-03-28 15:32:43
    /*给创建bitmap index分配的内存空间参数,以加速建索引*/ show parameter create_bit; /*改变索引的存储参数*/ alter index index_name pctfree 30 storage(initial 200k next 200k); /*给索引手工分配一个分区...
  • Oracle创建删除索引

    千次阅读 2019-05-06 10:27:44
    索引的创建 create index index_name ontable(column_name1,...创建唯一索引 create index unique index_name ontable(column_name1,column_name2); 索引的删除。 drop index index_name; 以下两条语句是...
  •  2、删除唯一约束时不会删除对应唯一索引。  3、可以对非唯一索引建立唯一约束。  4、用途不同,索引是为了加快检索速度,约束是为了保证数据完整性。  创建索引:create index metaid_copys on i_copys...
  • 1. 监控当前用户所有索引 ...2. 一段时间后查询从未被使用的索引删除无用索引 注意:视具体业务情况,选择一周后,一月后,两月后(总之要保证应用的所有SQL都至少跑一遍) 2.1 查看这段时间内...
  • 创建唯一约束会在Oracle中创建一个Constraint,同时也会创建一个该约束对应的唯一索引。 创建唯一索引只会创建一个唯一索引,不会创建Constraint。 也 就是说其实唯一约束是通过创建唯一索引来实现的。 在删除...
  • Oracle 主键外键唯一索引索引

    千次阅读 2016-09-29 17:45:17
    1.查询索引  select table_name,index_name from user_indexes where table_name=upper('test_temp1'); 2.创建主键  (1)创建表的时候创建:  create table test_temp1(id int primary key,name varchar2(20)); ...
  • Oracle 10g删除唯一约束键时,需要手动删除该唯一约束的唯一索引,其实唯一键就是通过唯一索引来实现的。 alter table t drop constraint constraint_name cascade [b]drop index[/b]; 如果不加上[b]drop ...
  • oracle创建索引: CREATE INDEX 索引名 on要创建索引的...oracle索引索引的建立、修改、删除 索引 索引是关系数据库中用于存放每一条记录的一种对象,主要目的是加快数据的读取速度和完整性检查。建立索引是一项技...
  • 此问题因数据库已经是有数据的,创建唯一索引的那一列有重复的数据,即数据库中的已存在数据不符合要创建索引的条件,导致创建索引的时候会出现ORA-01452找到重复关键字的错误。解决:例 :表中有两个字段 id,year,创建...
  • 一、概念和作用 在oracle索引是一种供服务器在表中快速查找一个行的数据库结构。合理使用索引能够大大提高数据库的运行效率。
  • oracle创建索引删除索引

    万次阅读 2013-11-19 16:12:15
    创建 CREATE INDEX index_Trans_list(索引名) ON Trans_list(表名) (receivedepid(字段名)) 删除 drop index index_Trans_list (索引名)
  • 一、简介 索引是关系数据库中用于存放每一条记录的一种对象,主要目的是加快数据的读取速度和完整性检查。建立索引是一项技术性要求高的工作。一般在数据库设计阶段的与数据库结构一道考虑。应用系统的性能直接与...
  • 一般都认为一条数据在表中通过主键字段来唯一确定,但是有时候表中并...(1)主键约束和唯一键约束均会隐式创建同名的唯一索引,当主键约束或者唯一键约束失效时,隐式创建的唯一索引会被删除; (2)主键约束要求列...
  • ORACLE 索引索引的建立、修改、删除索引 索引是关系数据库中用于存放每一条记录的一种对象,主要目的是加快数据的读取速度和完整性检查。建立索引是一项技术性要求高的工作。一般在数据库设计阶段的与数据库结构...
  • oracle的索引分为5种:唯一索引,组合索引,反向键索引,位图索引,基于函数的索引 创建索引的标准语法: CREATE INDEX 索引名 ON 表名 (列名)  TABLESPACE 表空间名; 创建唯一索引: CREATE ...
  • Oracle中唯一约束和唯一索引的区别

    千次阅读 2013-09-10 14:22:32
    在使用TOAD来操作Oracle数据库时,会注意到创建约束时有Primary Key、Check、Unique和Foreign Key四种类型的约束,这与SQL Server中的约束没有什么区别,这里的Check约束除了用于一般的Check约束外,在Oracle中也...
  • Oracle-index索引解读

    万次阅读 2016-10-27 21:25:05
    概述Oracle-OLAP和OLTP解读Oracle-index索引解读Oracle-分区表解读Oracle-锁解读Oracle-等待事件解读Oracle-procedure/cursor解读 索引是数据库对象之一,用于加快数据的检索 索引是建立在表上的可选对象;索引的...
  • 原帖地址: http://hi.baidu.com/oracle88/blog/item/14e66913d1299c1cb9127b9d.html/cmtid/c041b9979d3e40077bf480fb   oracle 10g删除唯一约束时,需要手动删除该唯一约束
  • oracle创建、删除索引等操作

    万次阅读 多人点赞 2018-05-02 09:52:06
    2、删除索引 drop index 索引名; 3、创建组合索引 create index 索引名 on 表名(列名1,,列名2); 4、查询索引 --根据索引名,查询表索引字段 select * from user_ind_columns where index_name='索引名'; ...
  • (1)主键约束和唯一键约束均会隐式创建同名的唯一索引,当主键约束或者唯一键约束失效时,隐式创建的唯一索引会被删除; --建表 create table student( stu_name varchar2(30) not null, age varchar2(4), ...
  • Oracle主键、唯一键与唯一索引的区别   一般,我们看到术语“索引”和“键”交换使用,但实际上这两个是不同的。索引是存储在数据库中的一个物理结构,键纯粹是一个逻辑概念。键代表创建来实施业务规则的完整性...
  • 第一步 删除表与索引之间的联系 ALTER TABLE SPXGDITEM DROP CONSTRAINT PK_SPXGDITEM; 第二步 执行删除索引语句 DROP INDEX PK_SPXGDITEM; 第三步 若要重新创建索引则执行 create unique index PK_SPXGDITEM ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 56,471
精华内容 22,588
关键字:

oracle删除唯一索引