서버의 모든 USP를 스크립팅하는 아래 PowerShell 스크립트를 조합했습니다.PowerShell SQL 스크립팅 USP 및 사용자
하나의 전체/큰 파일로 저장하는 대신 출력을 개별 파일로 분할하는 옵션이 있습니까?
Get-ChildItem -Path SQLSERVER:\SQL\myserver\Default\Databases\mydb\StoredProcedures\ | %{$_.script() | out-file -Filepath "myfilelocation.sql"}
'Foreach-Object' (%) 스크립트 블록 안에'Out-File'에 파이프를 넣으려고 했습니까? 즉'% {$ _. Script() | Out-File ...} ' – Shaneis
@Shaneis 감사합니다. 가까이와. Out-File을 파이프에 추가했는데 개별적으로 모든 작업을 수행하는 것을 볼 수 있습니다 (파일이 커지고 반복적으로 줄어 듭니다). 그러나 각 파일에 대해 별도의 파일이 생성되도록 Foreach-Object를 소개하는 방법을 모르겠습니다. . 'Get-ChildItem -Path SQLSERVER : \ SQL \ my server \ Default \ Databases \ mydb \ StoredProcedures \ | % {$ _. script() | out-file -Filepath "mylocation _ $ (get-date -f yyyyMMdd) .sql"}' –
매번 파일을 덮어 쓰는 것이 그 때문입니다. 이 스크립트는 빨리 끝나야하므로 모두 같은 날에 끝내게됩니다 (잘하면). 스크립팅하는 프로 시저의 시간 또는 이름을 추가하여 파일 이름을 고유하게 만들고 그 이름이 도움이되는지 확인하십시오. 아니면'.sql '비트 다음에'-Append'를 사용하십시오 – Shaneis