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

ORACLE的索引和约束详解

 * 如果某个约束只作用于单独的字段,即可以在字段级定义约束,也可以在表级定义约束,但如果某个约束作用于多个字段, 
必须在表级定义约束 
* 在定义约束时可以通过CONSTRAINT关键字为约束命名,如果没有指定,ORACLE将自动为约束建立默认的名称 
定义primary key约束(单个字段) 
create table employees (empno number(5) primary key,...) 
指定约束名 
create table employees (empno number(5) constraint emp_pk primary key,...) 
定义primary key约束(多个字段,在表级定义约束) 
create table employees 
(empno number(5), 
deptno number(3) not null, 
constraint emp_pk primary key(empno,deptno) 
using index tablespace indx 
storage (initial 64K 
next 64K 


ORACLE自动会为具有PRIMARY KEY约束的字段(主码字段)建立一个唯一索引和一个NOT NULL约束,定义PRIMARY KEY约束时可以为它的索引 
指定存储位置和存储参数 
alter table employees add primary key (empno) 
alter table employees add constraint emp_pk primary key (empno) 
alter table employees add constraint emp_pk primary key (empno,deptno) 
not null约束(只能在字段级定义NOT NULL约束,在同一个表中可以定义多个NOT NULL约束) 
alter table employees modify deptno not null/null 
unique约束 
create table employees 
( empno number(5), 
ename varchar2(15), 
phone varchar2(15), 
email varchar2(30) unique, 
deptno number(3) not null, 
constraint emp_ename_phone_uk unique (ename,phone) 

alter table employees 
add constraint emp_uk unique(ename,phone) 
using index tablespace indx 
定义了UNIQUE约束的字段中不能包含重复值,可以为一个或多个字段定义UNIQUE约束,因此,UNIQUE即可以在字段级也可以在表级定义, 
在UNIQUED约束的字段上可以包含空值. 
foreign key约束 
* 定义为FOREIGN KEY约束的字段中只能包含相应的其它表中的引用码字段的值或者NULL值 
* 可以为一个或者多个字段的组合定义FOREIGN KEY约束 
* 定义了FOREIGN KEY约束的外部码字段和相


相关文档:

Oracle数据导出到DBF的问题

 Oracle数据导出很简单,但为了提高速度,我一般不直接导出成DBF,而是先导出成CSV格式的文本文件。
今天就遇到一个问题,导出的csv在转换成dbf时出现了很多空行。经过查找问题,发现是字段中含有换行符导致。
使用
select Replace(zsyj,chr(13)||chr(10),'')  as SXPD  from TableName
解决问题。 ......

jdbc连接Oracle

     虽然自己学习Java也还一段时间了,也连过一些数据库,比如说mysql,那已是好长之前的事了,但是呢,Oracle我就从未连过,尽管我学习Oracle也有一段时间了,嘿嘿,今天就尝试了一盘,真的觉得,所有的东西,都要自己尝试才行啊。
    首先是写好了连接: ......

oracle文本文件导入导出(sqlldr&&spool)

 关于导出
  原理
  通过sqlplus的的报表功能生成文本文件,但产生的文本文件因分析原因存在空行现象(只有回车没有其它),可以通过第三方方式处理一下生成标准文本
  A 学习过程
  1 建表
  
  SQL>CREATE TABLE TESTINOUT(ID NUMBER(10), USERNAME VARCHAR2(10), DATE1 DATE, MONEY NUMBER(6 ......

Oracle 9i中的flash back 查询


语法:
select *
from [TABLE] as of timestamp
to_timestamp('时间', ’时间格式')
 
作用:
查询某个时间点的数据,在这个时间点之后,数据更改已经提交了。
可以用来更正用户对数据的误操作
可以用来获取数据的更改情况,比如频率等
 
原理:
当数据update或delete时,原来的数据 ......

ORACLE checkpoint cnt和checkpoint scn

刚才上网搜checkpoint cnt,看到EYGLE写的一篇文章,写得不错,存起来方便以后学习。
=========================================================================
通过试验说明checkpoint cnt 和checkpoint scn的关系
1.在不同条件下转储控制文件
 
SQL> alter session set events 'immediate trace name C ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号