当你遇到几十个sql要一次性更新的,而且这些sql 有先后顺序,开发不愿意给整理到一起的时候,只能自己动手了.
Add-PSSnapin -Name SqlServerCmdletSnapin100
Add-PSSnapin -Name SqlServerProviderSnapin100
$ScriptPath="E:\update"
$db_name="dbname"
$db_instance_add="127.0.0.1,1433"
[System.IO.DirectoryInfo]$DirectoryInfo=New-Object System.IO.DirectoryInfo $ScriptPath | Sort-Object
try {
foreach( $f In ($DirectoryInfo.GetFiles("*.sql")))
{
$ScriptList=$($ScriptPath+"\"+$f.Name)
Invoke-Sqlcmd -ServerInstance "$db_instance_add" -Database "$db_name" -InputFile "$ScriptList" -ErrorAction Stop
Write-Host $f.Name " ...OK!"
}
Write-Host "CommitTransaction ."
}
catch {
Write-Host $_.Exception.toString()
Write-Host $HOSTNAME $f.Name " ...ERROR!"
}
Add-PSSnapin -Name SqlServerCmdletSnapin100
Add-PSSnapin -Name SqlServerProviderSnapin100
$ScriptPath="E:\update"
$db_name="dbname"
$db_instance_add="127.0.0.1,1433"
[System.IO.DirectoryInfo]$DirectoryInfo=New-Object System.IO.DirectoryInfo $ScriptPath | Sort-Object
try {
foreach( $f In ($DirectoryInfo.GetFiles("*.sql")))
{
$ScriptList=$($ScriptPath+"\"+$f.Name)
Invoke-Sqlcmd -ServerInstance "$db_instance_add" -Database "$db_name" -InputFile "$ScriptList" -ErrorAction Stop
Write-Host $f.Name " ...OK!"
}
Write-Host "CommitTransaction ."
}
catch {
Write-Host $_.Exception.toString()
Write-Host $HOSTNAME $f.Name " ...ERROR!"
}
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20630340/viewspace-2129878/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/20630340/viewspace-2129878/