2013-10-03 4 views
3

this link에 따르면 중괄호를 사용하여 전체 변수 문자열을 이스케이프 처리 할 수 ​​있어야합니다.Oracle 용 중괄호 이스케이프 사용 방법

SELECT * FROM customer WHERE name = '{Sam}' 
:이 한 취급으로

SELECT * FROM customer WHERE name = 'Sam' 

같은이 (소각) SQL 쿼리를 처리해야 - 나의 이해는 오라클 (나는 우리가 11g를 사용 들었다 10g 이상)이다

실제로 탈출해야 할 문자열을 시도하기 전에 정상적인 검사로 시도했지만 작동하지 않았습니다. 맨 위 쿼리는 데이터를 반환하지만 맨 아래 쿼리는 반환하지 않습니다. 내가 뭔가 잘못하고 있는거야?

+1

에고의 대답이 정확한 것입니다. 'q'는 "quoted literal"을 설정합니다. 오라클 10 문서는 오라클 11 문서보다 훨씬 명확합니다. Oracle 10 문자열 리터럴 설명서는 [여기] (http://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements003.htm#i42617)입니다. –

+0

그래, 그건 좀 이상 해지 네. –

답변

7
SELECT * FROM customer WHERE name = q'{Sam}' 
관련 문제