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 877 게시물 읽기
No. 877
static sql과 dynamic sql의 속도
작성자
DB2초보
작성일
2005-11-12 22:58ⓒ
2005-11-14 14:39ⓜ
조회수
6,646

안녕하세요]

 

sqc로 프로그램을 하고 있는데 그냥 unique key로 되어 있거나

그냥 한건만 select가 되는 경우 다음과 같이 문장을 씁니다

 

EXEC SQL SELECT count(*) FROM employee WHERE name = :hname;

그런데, bldxlc로 컴파일후 실행하는데 이 select 문에서 시간이 무척 오래 걸린다는 점을 발견했습니다. 그리고 이런 식으로 select할 때 다른 테이블들에서도 역시 신경쓰일 정도로 시간이 지체됩니다.

(그냥 client tool에서 select를 하면 바로 결과가 나옵니다)

 

위의 select문장을 dynamic sql로 다음과 같은 과정을 거치도록 sqc로 작성하여 실행하니

정상적으로 속도가 나옵니다.

sprintf(hstmt, "SELECT count(*) FROM emplyee WHERE name = '%s'", hname);

declare cursor...,

prepare cursor...,,

fetch cursor...,INTO

close cursor...,

 

첫번째 static sql문을 사용했을 때 무슨 문제가 있거나 체크해야 하는 점이 있나요?

왜 이런 속도 차이가 생기는지 잘 이해가 가지 않습니다.

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

static sql의 access plan 과 dynamic sql의 access plan을 비교해

보시기 바랍니다. 서로 다른 access plan을 가지고 있다면 access 방법의 차이가 있을것 같구요. 같은 access plan을 가지고 있다면 다른 문제가 있을것 같습니다.

김동주님이 2005-11-14 17:54에 작성한 댓글입니다. Edit

하나만 더 부탁드릴께요.

 

저, access plan보는 방법을 모르는데,

가르쳐주시면 감사하겠습니다.

 

sqc프로그램을 실행하면서 바로 볼 수 있는 건지

잘 감이 안와서요...^^

 

DB2초보님이 2005-11-14 19:30에 작성한 댓글입니다. Edit

embeded sql문에 대한 explain

C로 embedded static SQL문을 작성한 경우 DB에 binding을 하게되면 package가 생성됩니다. db2expln tool을 사용하여 해당 package의 explain을 볼 수 있습니다. 아래 command에서 -c는 package의 schema를 의미하며 -p는 package의 이름입니다. explain결과는 -o option 다음에 기술합니다.

db2expln –d db명 –c 패키지스키마 –p 패키지명 –o 화일명

예)

db2expln -d sample -c db2inst1 -p EX100C -o ex100c.exp

김동주님이 2005-11-15 14:57에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
882또 질문입니다. db2 rollforward db wdh2dv user db2admin using db2admin to end of logs [1]
jinkuidong
2005-11-25
5623
881restore 할때 rollforward에서 다음 에라가. 고수님들 부탁드립니다.
jinkuidong
2005-11-24
5192
879이게 왜 안되져? 한번 봐주세여...edind는 char(8)로 설정했음 [1]
초보
2005-11-15
5728
877static sql과 dynamic sql의 속도 [3]
DB2초보
2005-11-12
6646
876DB2에서 COMP모드를 정수타입으로 백업을받을려면..?
서응주
2005-11-11
5022
875DB2에서 BLOB 타입의 데이터 exp/imp 방법 [1]
김규형
2005-11-07
8106
874점검자구함
디비맨
2005-11-04
5157
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.024초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다