I 오류 코드 및 관련 오류 메시지 보유하고있는 다음과 같은 테이블 구조가 : 내 PLSQL 코드에서값을 가진 열의 자리를 채울 동적
ERR_CODE ERR_MESSAGE
CN001 Invalid Username :USERNM
CN002 Invalid Password :PWD
, 나는 동적으로 사용자 이름과 암호에 대한 값을 대체하고 싶습니다 .
EXECUTE IMMEDIATE는 USING 절을 대체 할 수 있지만이 경우 쿼리는 정적이어야한다는 것을 알고 있습니다.
나는이 할 수있는 것을 특징으로 즉시 실행 비슷한 맛을 찾고 :
SIMILAR_EXECUTE_IMMDIATE q'{select ERR_MESSAGE from ERROR_MESSAGES where ERR_CODE = 'CN001'}' INTO l_err_msg USING l_curr_user;
을 아니면 내가 2 단계로 그것을 분해 할 수 있습니다, 내가 노력하고 기본적으로
select ERR_MESSAGE into err_msg_var from ERROR_MESSAGES where ERR_CODE='CN001';
EXECUTE_IMMDIATE err_msg_var INTO l_err_msg USING l_curr_user;
관련된 단계 수를 줄이거 나 더 나은 쿼리 또는 접근법을 얻을 수 있습니다.
미리 감사드립니다.
어떤 상황에서도 사용자의 암호를 일반 텍스트로보고하려는 시스템이 있는지 확실하지 않습니다. 시스템은 암호를 처리 한 다음 암호를 기록하거나 오류 메시지에 표시하지 않고 암호를 버려야합니다. –