아래와 같이 할 수 있습니까? IF @ parameter = 1 BEGIN ... 쿼리 ... END IF @ parameter = 2 가능한 경우 올바른 구문이 필요합니다. OLE DB 연결입니다. 저장 프로 시저가 아닙니다. 그냥 SQL 쿼리SSIS 매개 변수를 기반으로 SQL 실행 작업
답변
DECLARE @param AS INT = ?;
IF @param = 1
BEGIN
SELECT 1 AS Y;
END
ELSE IF @param = 2
BEGIN
SELECT 2 AS Y;
END
두 가지 질문 쿼리에 표시 아마 당신은 단지 하나의 변수를 전달하고있다. 개발자가 동일한 값을 두 번 (또는 여러 번) 전달하는 코드를 보았습니다. 이것은 비효율적이다. 더 좋은 방법은 전달 된 매개 변수를 SSIS 변수로받는 것입니다. 장점 : 1. 한 값만 전달해야합니다. 2. 전달 된 매개 변수가 sql에서 사용되는 순서를 변경하는 경우 SQL 실행 태스크 편집기 // 매개 변수의 사용자 인터페이스에서 순서를 변경할 필요가 없습니다. 이것은 Andy Leonard가 나중에 그의 답변에서 제안한 것입니다.
하실 수 있습니다. SQL 실행 태스크를 언급한다고 가정하면 OLE DB 연결을 사용하는 SQL 실행 태스크의 매개 변수는 물음표 (?)를 매개 변수 자리 표시 자로 사용합니다. SQL 실행 태스크의 매개 변수 매핑 페이지에서 SSIS 변수에 자리 표시자를 매핑합니다. SQLStatement에서 속성에 입력합니다 : (? = 1) (? = 2)
을 을 시작하면 ... {여기에 몇 가지 T-SQL} ... 끝 는 경우 ... { 시작 여기에 일부 T-SQL} ... 끝
그건 내가 생각하는 것을 달성하는 한 가지 방법입니다.
또 다른 방법은 Execute SQL 작업을 만들어 데이터베이스에서 @parameter 값을 SSIS 변수로 읽는 것입니다. 그런 다음 SQLStatement 속성으로 T-SQL에 대한 각 옵션이있는 두 개의 SQL 실행 작업을 빌드하고 선행 제약 조건에 대한 식을 사용하여 실행할 SQL 실행 작업을 결정할 수 있습니다. 이 도움이
희망, : {>
SQL 실행 작업을 사용하여 Transact-SQL 문을 실행할 수 없습니다.
달성하려는 목표에 따라 조건부 SQL 문을 설정하는 데 사용됩니다.
에서, 일반 탭에서 SQL 작업 편집기
- 을 실행 SQLStatement에서 비워 둡니다. 매개 변수 매핑 탭에서
- 는, 표현 탭에서 이름을 0
을 매개 변수 매개 변수와지도 사용자 : 매개 변수를 추가,
에 SQLStatementSource설정 (DT_NUMERIC, 18, 0) @ [사용자 :: 매개 변수] == 1? ... 쿼리 1 ... ... ... 쿼리 2 ...
- 1. SSIS SQL 실행 작업 오류
- 2. 는 SQL 작업 [SSIS]
- 3. SSIS SQL 실행 작업 출력 변수
- 4. ssis sql 작업 로깅
- 5. 변수를 반환하는 SSIS 2008 sql 작업
- 6. SSIS 실행 Sql 작업 결과 집합 개체
- 7. SSIS SQL 작업 매 분기 첫날에 실행
- 8. 데이터베이스 테이블의 플래그를 기반으로 SSIS 패키지 실행
- 9. SQL 결과를 기반으로 실행 중지
- 10. SharePoint에 SSIS 작업 실행 표시
- 11. SQL 클라이언트에서 SSIS 패키지 실행
- 12. SQL 매개 변수를 기반으로 여러 테이블 선택
- 13. SSIS - SQL 실행 태스크에 숫자 매개 변수 전달
- 14. SSIS 패키지를 실행하는 SQL Server 작업 - remove \ SERVER 매개 변수
- 15. SSIS Execute SQL 작업 오류가 없습니다.
- 16. Execute SQL 작업의 매개 변수에 여러 값 지정 --SSIS
- 17. SSIS Webservice 작업 변수
- 18. SSIS 실행 식 로깅
- 19. 다른 매개 변수를 기반으로 매개 변수를 채우십시오.
- 20. SSIS에서 SQL 에이전트 작업 실행
- 21. SSIS 패키지에서 SSRS 보고서에 매개 변수를 전달하는 방법은 무엇입니까?
- 22. SQL Server 에이전트의 ssis 작업
- 23. 다른 경로를 통해 동일한 SSIS 작업 실행
- 24. 패스 매개 변수를 기반으로
- 25. 매개 변수를 사용하여 실행
- 26. 일부 매개 변수를 기반으로, 좋아
- 27. SSIS 패키지 실행 모니터링
- 28. 변수를 기반으로하는 SSIS 분할 실행 경로
- 29. SQL Server 에이전트 작업 실행 문제 - ssis 패키지
- 30. 변수를 기반으로 데이터 흐름 태스크를 실행 하시겠습니까?
if (? = 1) begin ... {여기에서 일부 T-SQL} ... end If (? = 2) 시작 ... (일부 T-SQL은 여기에서) ... 끝 위의 SQL은 작동합니까 ?? "구문 분석 할 수 없음"오류가 발생합니다. 내게 올바른 구문을 써라. – user1810575