易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle约束

1.约束
作用:
约束用于确保数据库数据的完整性,在oracle数据库中,可以使用约束,触发器和应用代码(过程,函数)3种方法实现数据完整性,这3种方法中,因为约束易于维护,并且具有最好的性能,所以实现数据完整性首选约束.
分类:
约束的种类有:not null,unique,primary key,foreign key,check
Not null确保字段值不能为空
Unique:确保字段值唯一性
Primary key,最常用的约束(主键约束),主键约束的列值不仅不能重复,也不能为NULL,注意一张表最多只能有一个主键约束,当定义主键约束后oracle自动建立一个以主键为关键字段的索引。
Foreign key:定义了主从表之间的关系,foreign要定义在从表上,但主表必须具有主键约束或唯一约束,当定义froeign key后外部键列的数据必须在主表的主键列中存在,或者为NULL
Check::用于强制表行数据必须满足的条件,如工资表,工人工资必须在2000-5000之间
约束状态
enable validate:是默认,新旧数据同时满足约束规则
enable novalidate:旧数据可以不满足,检新插入的数据要满足约束
disable validate:不允许在表上执行任何DML操作,主要用在分区表,对于主键和唯一约事,会删除相应的唯一索引,但约束状态任可用
disable novalidate数据可不满足约束规则,对于主键和唯一约事,会删除相应的唯一索引,
约束常用语句
create table t(i number,v mubmer not null)
create table t(i number,v mubmer unique)
create table t(i number constraint pk_i primary key,v number)
create table t2(c number,d number,constraint fk_d foreign key(c),references t1(v));
alter table t add constraint pk_i primary key (i)
alter table t modify i not null;
alter table t add constraint t_i unique(i)[(create index ind_name on t(i))];
alter table t add constraint t_i check(i in (1,2,3,4,5));
alter table t disable novalidate constraint i
alter table t enable novalidate constraint check_i
alter table t drop constraint i;
alter table t drop primary key i;
#常用的数据字典
dba_constraints
dba_cons_columns
user_cons_columns
user_constraints
简单应用
检验当为一个表建立主键索时后,这个字段是否满足约束非空,唯一性,而且自动建立一个索引,并查看当把约束状态关闭再次插入相同的记录,是否还能把把约束设为enable ividate状态。
SQL> create table t(i number c


相关文档:

Oracle 数据库的绑定变量特性及应用

关键词:
绑定变量(binding variable),共享池(shared buffer pool), SGA(system global area);
在开发一个数据库系统前,有谁对Oracle 系统了解很多,尤其是它的特性,好象很少吧;对初学者来讲,这更是不可能的事情;仅仅简单掌握了SQL的写法,就开始了数据库的开发,其结果只能是开发一个没有效率,也没有可扩展的系统;
因此,我 ......

查看oracle的系统文件

在命令格式下,进入sqlplus的编辑状态中
 
(1)查看控制文件的内容:
SQL> DESC v$controlfile
 名称                               &n ......

ORACLE中建立自增字段

Oracle中不像其他如mysql等数据库的有自增字段,如果需要则需要借助序列和触发器
首先建表
建立序列
建触发器
For example:
create table SYS_MESSAGE
(
ID NUMBER not null PRIMARY KEY,
M_TYPE VARCHAR2(10) not null,
TITLE VARCHAR2(200),
CONTENT LONG,
M_TIME VARCHAR2(50),
A ......

使用CodeSmith生成oracle数据库表的实体层(Model)

使用CodeSmith生成oracle数据库表的实体层(Model)
http://blog.csdn.net/dacong/archive/2009/01/27/3853663.aspx
自己写的,CodeSimth中的例子都是msSQL server的,所以自己写了个支持Oracle数据库表的,不一定很完善,适用就好,数据类型没有周全考虑,只考虑了常用的一些类型,增加了个表名字属性,采用的.net2.0我结 ......

转载oracle安装概要步骤

一、在ORACLE创建一个新的实例过程:
        1、安装好ORACLE服务端。
        2、创建数据库实例,使用ORAHOME目录下的"Configuration and Migration Tools"下的"Database Configuration Assistant"工具。
     &nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号