Я новичок в powershell и пытаюсь написать сценарий для всех заданий агента SQL. Я нашел фрагмент кода, который делает это благодаря ENRIQUE в SOLID QUALITY MENTORS.
Мой вопрос: как мне написать сценарий, если существует, отбрасывать для каждой работы?
Options.ScriptJobs, кажется, не делает то, что я думаю, должно делать?
param ([строка] $ serverName, [строка] $ jobNameFile)
функция script-SQLJobs ([строка] $ сервер, [строка] $ jobNameFile)
{
[mirror.assembly] :: LoadWithPartialName ("Microsoft.SqlServer.Smo") | Out-Null
$srv = New-Object Microsoft.SqlServer.Management.Smo.Server("$server")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$scrp = New-Object Microsoft.SqlServer.Management.Smo.Scripter($srv)
$scrp.Options.ScriptDrops = $TRUE
$scrp.Options.WithDependencies = $TRUE
$jobNameFile = "C:\SQLJOBS\Jobs.sql"
remove-item $jobNameFile
$jobs = $srv.JobServer.get_Jobs()
$jobs=$jobs | Where-Object {$_.Name -notlike "sys*"}
foreach($job in $jobs)
{
$script=$job.Script()
$script >> $jobNameFile
"GO" >> $jobNameFile
}
}
script-SQLJobs $ serverName $ jobNameFile
Большое спасибо.