Powerbuilder datawindow runtime(PBD, DLL)일때 느린현상이 나타날때(DisableBind=1)
Powerbuilder에서의 datawindow는 대부분 retrieval parameter를 사용하기때문에
아래와 같은 구성으로 binding처리되어 datasource가 구성됨
*datawindow datasource
select a.flight_code,b.flight_name
from flight a, flightnm b
where a.flight_code = b.flight_code
and a.flight_code = :asFlightCode
binding 변수값을 변경하여 실행하면 Oracle의 shared pool은
아래와 같이 해당 상수값으로 변경되어 처리됨
*Oracle share pool
select a.flight_code,b.flight_name
from flight a, flightnm b
where a.flight_code = b.flight_code
and a.flight_code = 'AAA'
select a.flight_code,b.flight_name
from flight a, flightnm b
where a.flight_code = b.flight_code
and a.flight_code = 'BBB'
*해결책
이런경우 powerbuilder에서 DB 연결시 parameter에 아래와 같이 추가하면
SQL문장에 binding 변수 값이 셋팅되도록 하면 해소 됨
SQLCA.DBParm = 'DisableBind=1'
기존 parementer가 있다면 " , " 추가하고 위의 값을 추가해주면 됩니다.
♥도움 되셨다면 ♥ 공감 부탁드려요~~
Sybase : DisableBind 설명