2017-02-06 5 views
1

, 내 SQL 옵션이 지정 커밋 :RPG 임베디드 SQL 설정 옵션은 = * 임베디드 SQL을 사용하여 자유 형식 RPG에서 CS

exec sql 
set option commit=*CS, 
datfmt=*iso, 
closqlcsr=*endmod; 

내가 선택 내 SQL에 WITH CS을 지정해야 할, commit=*CS를 지정하는 경우 나는 set 옵션에서 지정한 이후로 가정 한 것인가?

내가 commit=*none 지정하고 내가 *none 말했다 커밋 내 설정 옵션에 있기 때문에 내 SQL WITH CS이 적용됩니다 select 문에 WITH CS을 지정하는 경우?

답변

1

set option 문은 모듈의 모든 문에 대한 기본값을 설정합니다.

기본값은 개별 문에서 WITH 절에 의해 무시 될 수 있습니다.

WITH 절은 확약 제어 및 커서 안정성 분리 레벨을 사용하지 않고

exec sql 
set option commit=*CS, 
datfmt=*iso, 
closqlcsr=*endmod; 

성명과 그래서. WITH NC의 명령문은 확약 제어를 사용하지 않고 WITH RS과 같은 명령문은 확약 제어 및 분리 레벨 읽기 안정성을 사용합니다.

참고 : closqlcsr=*endmod은 성능을 저하시킵니다. 일반적으로 저조한 설계 및/또는 오래된 응용 프로그램을위한 반창고로 사용됩니다.

+0

'closqlcsr = * endmod'는 성능에 좋지 않을 수도 있습니다. 그것을 지정하는 것이 가장 좋을 수도 있지만 OP에서 아직 알 수는 없습니다. 매우 자주 지정하지 않는 것이 가장 좋습니다. – user2338816