여러 IBM iSeries 상자에서 실행중인 DB2를 처음 사용했습니다. 키 필드가 매개 변수의 값으로 시작하는 테이블에서 값을 선택하는 저장 프로 시저를 작성하는 데 어려움이 있습니다. 변수가있는 DB2 LIKE 연산자
지금 MS SQL 서버의 I는 이것을 작성합니다 : 내 DB2 proc 디렉토리에 대한 그래서SELECT field FROM table WHERE fieldB like parm + '%'
를 내가 가지고 :
SELECT field FROM table WHERE fieldB like parm || '%'
내가 IBM 설명서 만에뿐만 아니라이 구문을 발견 몇 가지 SO 질문 및 답변. 그래서 와일드 카드 문자를 매개 변수 값에 연결하는 방법을 이해합니다. 나는 심지어뿐만 아니라 다음을 수행하려고했습니다
[SQL0104] Token PARM was not valid. Valid tokens: FOR NOT CCSID NORMALIZED.
: 내 CREATE PROCEDURE 문을 실행할 때
불행하게도, 나는 다음과 같은 오류가 발생
SET [*some declare variable*] = parm|| '%'
및
SET srch = CONCAT(parm, '%');
WHERE 절의 CONCAT 함수 사용 :
WHERE fieldB like CONCAT(parm, '%');
각각 동일한 오류가 반환됩니다.
그래서 내가 뭘 잘못하고 있을까요?
시스템의 버전이 무엇인지 알고 계십니까? –
예. 대부분 V7R2를 실행 중이지만 V6R1을 실행중인 V7R2가 하나 이상 있습니다. 결국 모든 시스템이 V7R2에 탑재 될 것입니다. –