모두.SQL Server 에이전트를 통해 실패하는 일괄 파일
정의 된 데이터베이스의 데이터를 쿼리하고 특정 위치의 CSV 파일에 넣는 SSIS 패키지를 작성했습니다. 그런 다음 SSIS 패키지 내에서 지정된 디렉터리에 폴더를 만드는 미리 작성된 배치 파일을 호출하고 폴더 이름을 "yyyy-mm-dd"형식의 이름으로 바꾼 다음 새로 만든 CSV 파일을 새 파일로 이동합니다 생성 된 폴더.
배치 파일의 코드는 다음과 같이
@echo off
FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET CDATE=%%B
FOR /F "TOKENS=1,2 eol=/ DELIMS=/ " %%A IN ('DATE/T') DO SET mm=%%B
FOR /F "TOKENS=1,2 DELIMS=/ eol=/" %%A IN ('echo %CDATE%') DO SET dd=%%B
FOR /F "TOKENS=2,3 DELIMS=/ " %%A IN ('echo %CDATE%') DO SET yyyy=%%B
SET date=%date:~6,6%-%date:~3,2%-%date:~0,2%
md \\remote_folder\%date%
move /Y \\remote_folder\*.csv \\remote_folder\%date%
exit
내 SSIS 패키지에서이 작업을 실행, 모든 것이 잘 작동합니다.
에이전트 작업을 시작하는 서비스 계정에는 전체 관리 권한이 있습니다. SQL Server Agent를 사용하여이 작업을 자동화 된 작업으로 예약하면 폴더가 제대로 만들어지지 않습니다. 내 생각에 SQL Agent 중 하나가 배치 파일을 실행하는 데 문제가 있거나 호환되지 않습니다.
다른 누구도이 문제를 알고 있거나 해결 방법을 알고 있습니까?
배치 파일을 찾았습니까? – Sam
예.하지만 에이전트를 통해 실행할 때 배치 파일이 폴더를 잘못 만듭니다. 내가 "틀린 말"이라고 말하면 폴더가 만들어지고 "12"라는 레이블이 붙은 다음 "09"라는 레이블이 붙은 하위 폴더를 만든 다음 "18"이라는 레이블이 붙은 하위 폴더 내에 다른 하위 폴더를 만듭니다. – prevynjeftha
그리고 폴더 이름이 무엇을 의미합니까? 창문 일괄 처리 스크립트에서는별로 좋지 않습니다. 또 다른 옵션으로 powershell에서이 작업을 수행 할 수 있습니다.) – Sam