Oracle-11-主键约束】的更多相关文章

继续昨天的折腾(Oracle修改主键约束),删掉主键约束后,发现唯一索引并未删掉.仔细看了下,主键约束跟唯一索引名称不一样,这说明是先创建了唯一索引,后创建的主键约束.我们来试验下: SQL> create unique index PK_T_INVITEE_RECORD_TEST on T_INVITEE_RECORD_TEST(INVITEEMSISDN, INVITERMSISDN, ACTIVITYID) tablespace TBS_VCODE_IDX; Index created S…
分类: DB 2011-12-03 21:34 611人阅读 评论(0) 收藏 举报 oracleconstraintsimmutableusertabledomain 1.  分别用两种方法创建主键 create table test1(id number,name varchar2(10)); insert into test1 values(1,'t1'); insert into test1 values(2,'t2'); commit; alter table test1 add co…
http://www.shangxueba.com/jingyan/122163.html主键:  1.主键约束: 一个表只能有一个主键约束.主键可以是单个字段,也可以是多个字段.无论是哪种情况,其所有字段都是NOT NULL.  2.Unique约束:一个表可以有多个Unique约束,Unique的字段可以为NULL.  3.主键与Unique:不同点在于一个表只能有一个主键约束,但是可以有多个Unique约束:主键所有字段都是not null,unique可以是null:相同点在于都能保证唯…
项目需求,有张表,原有三个联合主键,现在需要再加一个字段进去,而恰恰这个字段可以为空的.去数据库捞了一把,还好数据都不为空: SQL> select count(*) from t_wlf_record t where t.acceptinvitetime is null; COUNT(*) ---------- 那么我们需要先把这个字段修改为非空字段: alter table T_WLF_RECORD modify ACCEPTINVITETIME not null; 接着才能修改主键约束,约…
一般,我们看到术语“索引”和“键”交换使用,但实际上这两个是不同的.索引是存储在数据库中的一个物理结构,键纯粹是一个逻辑概念.键代表创建来实施业务规则的完整性约束.索引和键的混淆通常是由于数据库使用索引来实施完整性约束. 接下来我们看看数据库中的主键约束.唯一键约束和唯一索引的区别. SQL> select * from v$version; BANNER ----------------------------------------------------------------------…
非空约束:设置列时,可为空默认可为空,去掉对号之后设置数据不可为空: 唯一约束:在键中设置,唯一约束名称.类型Unique.列名:设置应用完成之后,此列数据具有唯一性:即数据不可重复(类型:Unique) 主键约束:主键列自动具有非空约束和唯一约束的属性,一个表只能有一个主键(类型:Primary)自动生成索引,提高查询效率 外键约束:两个表之间的约束关系:表与表之间的对应(类型:Foreign)…
1.主键的创建 方法一:直接在sql语句中声明字段主键约束 create table table_name (id type[length] constraint pk_name primary key,name tyoe[length],age type[length],class_id); 方法二:alter更改表添加约束 alter table table_name add constraint pk_name primary key (字段); 删除: alter table table…
(1)主键约束和唯一键约束均会隐式创建同名的唯一索引,当主键约束或者唯一键约束失效时,隐式创建的唯一索引会被删除: (2)主键约束要求列值非空,而唯一键约束和唯一索引不要求列值非空: (3)相同字段序列不允许重复创建索引 --查看约束名称,约束类型 select constraint_name, constraint_type from user_constraints; --查看索引名称,索引类型,唯一性,表空间名称 select index_name, index_type, uniquen…
问题描述: Oracle通过主键id删除2000条记录很慢,需要花费十二分钟. 解决过程: 1.首先查看SQL的执行计划,执行计划正常,cost只有4,用到了主键索引. 2.查看等待事件, select * from v$session_wait where sid = 507 显示的event是db file sequential read,也没有异常. 3.查看统计信息是否正常 select * from user_tables where table_name = ''; 经检测,统计信息…
一.约束的分类 1.实体约束 实体约束是关于行的,比如某一行出现的值不允许出现在其他行,例如主键约束. 2.域约束 域约束是关于列的,对于所有行,某一列有那些约束,例如检查约束. 3.参照完整性约束 若果某列的值必须与其他列的值匹配,那就意味着需要一个参照完整性约束,例如外键约束. 二.约束命名 1.系统创建约束名称 Sql Server我们不提供约束名称,会自动创建名称,但是创建的名称不是很有用.比如: 主键约束名:PK_Student_134351F,  检查约束名:CK_Student_5…