以下 PowerShell 函数在 PowerShell 2 上正常工作,但现在我正在 PowerShell 5 上对其进行测试,但无法使其工作。它旨在自动化备份恢复测试。但是由于 SQL Server 备份相关任务使用消息而不是返回记录集,因此我不得不添加一个add_InfoMessage带有处理程序的。
我想我可以做到,Invoke-Sqlcmd -Verbose但我更喜欢这种方法。
我还搜索了如何使用 SMO 进行操作,但一无所获
function Restore-Test {
param (
[string[]] $bkpPath,
[string[]] $testServer
)
$message = "Inicio: " + (get-date);
$message += "`nArchivo: " + $bkpPath;
$message += "`nTestServer: " + $testServer;
$connString = "Server=" + $testServer + ";Database=master;Integrated Security=SSPI;";
$commandString = "print 'Message from MSSQL!';";
#$commandString = "DBA_TOOLS.dbo.sp_RestoreTest N'" + $bkpPath + "'";
$conn = New-Object System.Data.SqlClient.SqlConnection $connString;
$conn.Open();
$cmd = $conn.CreateCommand(); …Run Code Online (Sandbox Code Playgroud)