환경을 위해 하나의 환경을 설정할 수 없습니다. 환경에 대한 아이디어는 실행 중에 어느 환경을 사용할지 선택하는 것입니다. 당신이 지적했듯이, 직업에서 그렇게 할 수 있습니다. 그렇다면 요원 직은 초 자연적 힘을 가지고 있다는 의미입니까? 내가 여기서 강조하고 싶은 무엇
/ISSERVER "\"\SSISDB\test\test1\Incremental.dtsx\"" /SERVER "\"DESKTOP-NT4K1HQ\""
/ENVREFERENCE 1 /Par "\"$ServerOption::LOGGING_LEVEL(Int16)\"";1
/Par "\"$ServerOption::SYNCHRONIZED(Boolean)\"";True /CALLERINFO SQLAGENT /REPORTING E
가 /ENVREFERENCE 1 매개 변수 : 아니요 스크립트 환경을 참조하는 패키지를 실행하는 단계로 작업을하는 경우, 당신은 잘 알고 dtexec를 명령, 예를 볼 수 있습니다 - 상담원 작업에서 선택할 환경을 아는 방법은 다음과 같습니다.
그래서 질문에 대한 답은 패키지를 실행하는 동안 항상 환경을 선택해야한다는 것입니다 (물론 원하는 경우). 카탈로그 절차의 경우에는 (this article 당) 같은 것을 할 것 : @reference_id = 1
사용자 환경 참조입니다
EXEC [SSISDB].[catalog].[create_execution] @package_name=N'Child1.dtsx', @[email protected]_id OUTPUT, @folder_name=N'TestDeply4', @project_name=N'Integration Services Project1',
@use32bitruntime=False,
@reference_id=1
. 환경 ID를 찾으려면 [SSISDB].[catalog].[environments]
보기를 쿼리해야합니다.
귀하의 질문에 답변했거나 다른 방법으로 귀하의 패키지를 실행 했습니까? 하나 이상의 환경이 필요 없다고 확신한다면 환경 변수가 전혀 필요 없다는 신호가 될 것입니다.
답변 해 주셔서 감사합니다. 1 개 이상의 환경 (DEV, QA, PROD ..)을 사용해야합니다. 내 문제는 내가 이런 패키지를 실행하고 있다는 것입니다. -> 웹 서비스를 가지고 있는데, DB에있는 SP에 매개 변수를 보내고,'start_execution'으로 패키지를 실행합니다. 이 매개 변수의 값. 내 의도는 연결 문자열에 환경 변수를 사용하여 쉽게 코딩 할 수 있고 필요한 경우 쉽게 변경할 수 있습니다. DB의 테이블에 의존하도록 변경해야합니까? – sagi
환경 변수는 필요한 것을 얻기위한 좋은 방법이지만 실행을 생성하는 동안 컨텍스트를 결정할 수 있어야합니다 (start_execution을 호출하기 전에 수행해야합니다). 웹 서비스의 매개 변수를 통해 환경 ID를 저장 프로 시저에 전달하거나 ID 또는 환경 이름을 저장할 구성 테이블을 만들 수 있다고 말하고 싶습니다. – PacoDePaco
또 다른 아이디어 : 데이터베이스/서버 이름과 일치하는 이름을 지정하여 필요한 환경을 설정하십시오 (환경을 분리하는 방법에 따라 다름). 그런 다음 [SSISDB]. [catalog]. [environments] 뷰를 쿼리하여 db/server 이름을 사용하여 환경 ID를 추출 할 수 있습니다. – PacoDePaco