PowerShell을 사용하여 실행할 다음 SQL 스크립트를 작성했습니다.CSV 파일에 출력 저장
cls
foreach ($svr in get-content "demo.txt")
{
$con = "server=MC1-PQ10X.RF.LILLY.COM\SQL01;database=mylilly_WSS_Content_INCTSK0014840;Integrated Security=sspi"
$cmd = "SELECT
Docs.DirName + '/' + Docs.LeafName AS 'Item Name',
DocVersions.UIVersion,
(DocVersions.UIVersion/512) as Version_Label, DocVersions.Level, DocVersions.TimeCreated
FROM DocVersions FULL OUTER JOIN Docs ON Docs.Id = DocVersions.Id
-- INNER JOIN Webs On Docs.WebId = Webs.Id
--INNER JOIN Sites ON Webs.SiteId = SItes.Id
WHERE (DirName LIKE '%globalcontentrepository%')
AND (IsCurrentVersion = '0')
AND (DocVersions.Id IN ('$svr'))"
$da = new-object System.Data.SqlClient.SqlDataAdapter ($cmd, $con)
$dt = new-object System.Data.DataTable
$da.fill($dt) |out-null
$dt | Export-Csv music.csv -Encoding ascii -NoTypeInformation
}
위의 코드에 직면 한 문제는 출력과 관련되어 있습니다. $svr
일 때마다이 코드가 새 CSV 파일을 만듭니다. 입력 파일에는 약 1000 개의 입력이 있습니다. 내 요구 사항은 모든 파일을 새 파일을 만드는 대신 동일한 파일에 저장해야한다는 것입니다.
powershell 등을 전혀 알지 못하지만 docs는'-Append' 매개 변수에 대해 이야기합니다 : http://technet.microsoft.com/en-us/library/hh849932.aspx – PeterMmm