2015-01-08 2 views
0

안녕하십니까. 제 질문을 읽으면서 진심으로 감사드립니다.SSIS 업데이트 Oracle DB

SSIS에서 작업 중이며 Oracle SQL 개발자가보기에 테이블의 일치하는 행을 업데이트하려고합니다. SSIS가 Oracle Database를 업데이트하는 데 몇 가지 문제가 있다는 것을 발견하고 OLE DB 명령을 통해이를 수행 할 수 있습니다. 그래서 내가 한 것은 OLE DB Source를 추가하여 Oracle SQL Developer에서 만든 View를 가져 왔습니다. 이 원본은 대상 테이블과 동일한 열을가집니다. 그런 다음 OLE DB 명령에 연결했습니다. 적절한 연결 관리자를 선택 했으므로 대상 테이블의 내용과 일치하도록 입력 및 출력 탭에 외부 열을 추가해야했습니다. 이렇게하면 모든 열 매핑을 선택할 수 있습니다. 그러나 내가 겪고있는 문제는 구성 요소 속성 탭의 사용자 지정 속성 섹션에 입력 한 SQLCommand와 같이 보입니다. 이 분야에서 경험이있는 사람이이 일을 도와 주시겠습니까? 아래 (: 나는 실행하려고 할 때. "하지 바인딩 모든 변수 ORA-01008"그것은 현재 나에게의 오류를 제공) : 내하는 SqlCommand입니다

UPDATE DB.PERMDB 
SET 
DB.PERMDB.NET_TIME = :NET_TIME, 
DB.PERMDB.PROC_ZONENAME = :PROC_ZONENAME, 
DB.PERMDB.NET_TIME2 = :NET_TIME2, 
DB.PERMDB.PROC_ZONENAME = :PROC_ZONENAME2, 
DB.PERMDB.LAST_DISCOVERY = :LAST_DISCOVERY1, 
DB.PERMDB.PULSEDATE = :PULSEDATE1 
WHERE 
DB.PERMDB.COMBREL = :COMBREL1 
+0

데이터 흐름에 'NET_TIME'열과 같은 것이 있습니까? – billinkc

+0

예 ... 내 OLE DB 원본에서 가져온 열 중 하나입니다. 그 앞에보기 이름을 포함해야합니까? 전의. DB.VIEW.NET_TIME? – QuestionsGalore

+0

'ORA-00933 : SQL 명령이 제대로 종료되지 않았습니다 ', 또는 다른 레이어에서 오는 오류입니까? 그 문장은 OK로 보인다. (NET_TIME을 스스로 설정하는 것 외에는 에러가 아니지만 원하는 것이 아닐 수도있다.) –

답변

0

내가 UPDATE 쿼리를 실행하는 스크립트 작업을 사용하여 종료 및 그것은 매력처럼 일했습니다.