database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 1725 게시물 읽기
No. 1725
reorg 명령 질문드립니다.
작성자
이도희
작성일
2008-09-25 12:04
조회수
11,742

SQL/PL이나 CLI 단에서 reorg table 명령 실행 안되나요? 


alter table db2inst1.cl_sched alter column class_code set data type char(36);


위에 alter문장을 네번 이상 하면 SQL20054N  The table "DB2INST1.CL_SCHED_DAMO" is in an invalid state for the operation.  Reason code="23".  SQLSTATE=55019


이런 에러가 발생해서 


reorg table db2inst1.cl_sched  


명령을 실행하니까 alter 문장이 되던데 ..


컬럼 사이즈를 변경하고 반드시 reorg를 해줘야 하는건지도 궁금하구요.. 


cli나 SQL/PL에서 reorg table문장을 지원을 안하는지도 궁금합니다.

이 글에 대한 댓글이 총 2건 있습니다.

V9부터 char type의 length도 변경이 가능합니다. 
char type이 아닌 varchar type의 경우는 alter 횟수와 상관없이 변경이 가능하지만 char type의 경우는 님이 말씀하신 현상이 발생하네요.

char type의 경우 length를 늘이게 되면 reorg를 해줘야 하는 경우가 발생할 수 있을 것 같습니다. 
varchar는 입력된 데이터만큼 공간을 차지하기 때문에 length를 변경해 주어도 기존에 입력된 데이터가 차지하는 공간의 크기는 변화가 없습니다. 
char type은 입력된 데이터가 없더라도 지정된 length만큼 공간을 차지하게 되는데 이 값이 늘어난다면 이미 입력된 데이터는 사용하던 페이지에 데이터를 저장하지 못하는 경우가 발생해 사용하는 페이지의 이동이 발생되겠지요. 이런 경우 인덱스 스켄시 데이터가 저장된 페이지를 바로 엑세스 하지 못하고 두개의 페이지를 읽어야 하므로 성능이 떨어지게 되어 reorg를 해주어야 합니다. reorg를 해 주어야 할 지는 reorgchk를 사용하여 판단하실수 있습니다.

그런데 동일한 length로 변경을 하는데 떨어지는 메시지는 이해가 안되네요 --;

cli에서 reorg를 하는 예제가 sample에 있습니다. 
 - tbonlineinx.c
sql/pl에서는 사용할 수 없는것 같네요.
조는 냥이님이 2008-09-25 14:56에 작성한 댓글입니다. Edit

네.. 저도 똑같은 사이즈로 변경하는거라 영향이 없을것 같은데 여러번 반복하면 에러가 떨어지는게 이해가 되질 않네요 ㅜㅜ


정보 감사드립니다.

이도희님이 2008-09-25 15:10에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1729라이브러리 파일 위치 질문드립니다. [2]
이도희
2008-10-02
9843
1727db2에서 날짜끼리 차이 계산하는 방법 [1]
리사
2008-09-26
20354
1726똑같은 행이 두개 존재할 때 한 행만 지우는 방법 [3]
초보
2008-09-25
10932
1725reorg 명령 질문드립니다. [2]
이도희
2008-09-25
11742
1724JDBC 커넥션 질문 [1]
김황만
2008-09-24
10520
1723SNAPSHOT_APPL_INFO 테이블 함수의 client_platform [2]
이도희
2008-09-22
9737
1722db2fmp프로세서 질문드립니다. [1]
이도희
2008-09-19
10282
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다