2012-12-13 2 views
2

명령 창을 사용할 때 제대로 작동하지만 SQL 창에는없는 Oracle 쿼리가 있습니다.대체 변수가있는 Ora-01008

명령 창은 DOS 창과 비슷하게 Pl/SQL Developer를 사용합니다.

SELECT EMPLOYEE_ID, FIRST_NAME, &&COLS 
FROM EMPLOYEE 
ORDER BY &COLS; 

그래서 PL/SQL 개발자하라는 메시지 오류는 다음과 같이

쿼리는? PL/SQL Developer가 아닌 다른 툴을 사용해야합니까?

+1

필드 목록에서 & COLS를 작성했지만 ORDER BY 절에 & COLS를 작성했습니다. 변수가 서로 다른 두 가지 상황에서 달라야한다는 점에 대해 내가 알지 못하는 멋진 구문이 있습니까? – DavidHyogo

+0

질문을 편집하여 조금 더 명확하게하려고했지만 "후자"라는 단어가 무엇을 의미하는지 이해할 수 없었습니다. – DavidHyogo

+0

매번 사용자에게 묻지 않고 변수 값을 다시 사용하려면 double-Ampersand (&&)가 사용됩니다. 그래서 한 번 프롬프트하고 값을 사용할 때마다 & Var를 찾습니다. –

답변

3

앰퍼샌드를 사용하는 변수 substition은 SQL이나 PL/SQL의 일부가 아닌 메커니즘입니다. 그것은 SQLplus의 확장입니다. Oracle의 SQL Developer는 동일한 확장을 구현합니다.

내가 아는 한, 이러한 확장은 Allround Automations의 PL/SQL Developer에 의해 구현되지 않습니다.

+0

답장을 보내주세요. –