posted by 구름너머 2005. 8. 22. 14:54

(PK인덱스에 PK 칼럼 추가)

PK이면서 INDEX로 생성을 한 경우.
PK 재생성을 위해 DROP INDEX하면 에러가 남.
ORA-02429에러가 나는데
이런 경우는 어떻게 해야 할까요?

ALTER TABLE 테이블명 DROP PRIMARY KEY CASCADE;

ALTER TABLE 테이블명 ADD (
CONSTRAINT PK명 PRIMARY KEY (PK KEY필드1,2,...)
USING INDEX
TABLESPACE 테이블스페이스명);

'ORACLE' 카테고리의 다른 글

sql*Loader에서 원하는 레코드만 로드하기!  (0) 2005.09.14
TOAD_PLAN_TABLE  (0) 2005.08.25
파티션 테이블에 파티션 추가하기  (0) 2005.05.03
오라클 유저 만들기  (0) 2005.04.19
TOad  (0) 2005.04.08
posted by 구름너머 2005. 5. 3. 11:54

ALTER TABLE &Table_Name ADD PARTITION &Parttion_Name
VALUES LESS THAN ('&High_Value') TABLESPACE &TableSpace_Name;


- &Table_Name : 변경할 테이블 명
- &Partition_Name : 새로 추가할 분할영역 명
- &HighValue : 새로 추가할 분할영역의 HighValue
- &TableSpace_Name : 새로 추가할 분할영역이 사용할 TableSpace명

-- 파티션 테이블에 파티션 추가하기.
ALTER TABLE tb_AAAA ADD PARTITION P20050831
VALUES LESS THAN ('20050901') TABLESPACE TB_space_AA;


※ Partition Add 구문은 한번의 하나의 파티션만 되므로 반드시 High가

작은 것부터 하나씩 추가해가야 되여..

(&HighValue가 항상 최상위 HighValue가 됨)

참고 : Add Partition은 해당되는 Local Index Partition 영역들도 자동으로
Add 시키거든여..
또 Add Partition은 한번에 하나의 파티션 밖에는 안되거든여..

'ORACLE' 카테고리의 다른 글

TOAD_PLAN_TABLE  (0) 2005.08.25
PK인덱스에 PK 칼럼 추가  (0) 2005.08.22
오라클 유저 만들기  (0) 2005.04.19
TOad  (0) 2005.04.08
테이블스페이스  (0) 2005.04.01
posted by 구름너머 2005. 4. 19. 09:50

1.오라클 유저 만들기
CREATE USER [user_name]
IDENTIFIED BY [password]
DEFAULT TABLESPACE [tablespace_name]
TEMPORARY TABLESPACE TEMP;

2.권한부여하기.
GRANT connect, resource TO [user_name];

'ORACLE' 카테고리의 다른 글

PK인덱스에 PK 칼럼 추가  (0) 2005.08.22
파티션 테이블에 파티션 추가하기  (0) 2005.05.03
TOad  (0) 2005.04.08
테이블스페이스  (0) 2005.04.01
오라클 에러메시지 조회 : 9i  (0) 2005.03.24
posted by 구름너머 2005. 4. 8. 14:56

Toad에서 Explain Plan 보기

view-Options 창에서 Oracle 트리에서 Explain Plan Table_name을 바꾸어 주면된다.

해당 테이블이 없다면 생성하여 준다.

sql Editor 창에서 화면아래의 조회 결과창에서 두번째 탭에 Explain Plan을 클릭하면 볼 수 있다.

CREATE TABLE PLAN_TABLE
(
STATEMENT_ID
VARCHAR2(30),
TIMESTAMP
DATE,
REMARKS
VARCHAR2(80),
OPERATION
VARCHAR2(30),
OPTIONS
VARCHAR2(30),
OBJECT_NODE
VARCHAR2(128),
OBJECT_OWNER
VARCHAR2(30),
OBJECT_NAME
VARCHAR2(30),
OBJECT_INSTANCE
NUMBER(10),
OBJECT_TYPE
VARCHAR2(30),
OPTIMIZER
VARCHAR2(255),
SEARCH_COLUMNS
NUMBER,
ID
NUMBER(10),
PARENT_ID
NUMBER(10),
POSITION
NUMBER(10),
COST
NUMBER(10),
CARDINALITY
NUMBER(10),
BYTES
NUMBER(10),
OTHER_TAG
VARCHAR2(255),
PARTITION_START
VARCHAR2(255),
PARTITION_STOP
VARCHAR2(255),
PARTITION_ID
NUMBER(10),
OTHER
LONG
);

'ORACLE' 카테고리의 다른 글

파티션 테이블에 파티션 추가하기  (0) 2005.05.03
오라클 유저 만들기  (0) 2005.04.19
테이블스페이스  (0) 2005.04.01
오라클 에러메시지 조회 : 9i  (0) 2005.03.24
Pro*C 에서 COMMIT 에 대하여  (0) 2005.03.23
posted by 구름너머 2005. 4. 1. 18:16

1. 테이블 스페이스 늘리기

alter tablespace POPS_IDX add datafile '/data/idx/psix02.dbf' size 4096M ;

2. 사용량 보기

set pau off
set trimspool on
column totalsize heading "total size(M)"
column usedsize heading "used size(M)"
column freesize heading "free size(M)"
column tablespace_name format a20
column totalsize format 999,999.9
column usedsize format 999,999.9
column freesize format 999,999.9
column used_percent format 999.9


select a.tablespace_name, a.totalsize,
nvl(b.usedsize,0) usedsize,nvl(round(((b.usedsize/a.totalsize)*100),1),0) Used_Perce
nt,c.freesize
from ( select tablespace_name, sum(bytes)/1024/1024 totalsize
from dba_data_files
group by tablespace_name ) a,
( select tablespace_name, sum(bytes)/1024/1024 usedsize
from dba_segments
group by tablespace_name ) b,
( select tablespace_name, sum(bytes)/1024/1024 freesize
from dba_free_space
group by tablespace_name ) c
where a.tablespace_name = b.tablespace_name(+)
and a.tablespace_name = c.tablespace_name(+)
order by 4
/

'ORACLE' 카테고리의 다른 글

오라클 유저 만들기  (0) 2005.04.19
TOad  (0) 2005.04.08
오라클 에러메시지 조회 : 9i  (0) 2005.03.24
Pro*C 에서 COMMIT 에 대하여  (0) 2005.03.23
오라클 Document  (0) 2005.03.23
posted by 구름너머 2005. 3. 24. 09:09

'ORACLE' 카테고리의 다른 글

TOad  (0) 2005.04.08
테이블스페이스  (0) 2005.04.01
Pro*C 에서 COMMIT 에 대하여  (0) 2005.03.23
오라클 Document  (0) 2005.03.23
Direct-Load Insert의 사용방법(Oracle8)  (0) 2005.03.22
posted by 구름너머 2005. 3. 23. 13:43

소스를 보다가 보니 궁금증이 생겨서 찾아 보았다.

CASE I : EXEC SQL COMMIT; ==> commit 처리한다.

CASE II : EXEC SQL COMMIT WORK; ==> commit 처리한다. ANSI 호환을 위한 것임. CASE I 과 동일하다.

CASE III : EXEC SQL COMMIT WORK RELEASE; ==> commit처리후 모든 리소를 반환한다. sql 접속 종료.

The optional keyword WORK provides ANSI compatibility.

The RELEASE option frees all Oracle resources (locks and cursors) held by your program and logs off the database

참고 : http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a97269/pc_03dbc.htm#338

'ORACLE' 카테고리의 다른 글

테이블스페이스  (0) 2005.04.01
오라클 에러메시지 조회 : 9i  (0) 2005.03.24
오라클 Document  (0) 2005.03.23
Direct-Load Insert의 사용방법(Oracle8)  (0) 2005.03.22
Pro*C 강좌 파일이 잘되어 있는곳.  (0) 2005.03.22
posted by 구름너머 2005. 3. 23. 13:34
1. Oracle9i Database Online Documentation
(Release 2 (9.2))
==> http://otn.oracle.com/pls/db92/db92.homepage

2. 오라클 제품 관련 문서 (Oracle Documentation)
==> http://www.oracle.com/technology/global/kr/documentation/index.html