Jun 3, 2026, 11:07 AM

This commit is contained in:
Paweł Domański
2026-06-03 09:07:50 +00:00
parent 38431b4334
commit 157a88d0f0
+23 -9
View File
@@ -22,13 +22,14 @@ function Test-SQLConnection {
[string]$ServerInstance
)
$connWarnings = $null
try {
# Using Test-DbaConnection from dbatools
$testResult = Test-DbaConnection -SqlInstance $ServerInstance -ErrorAction Stop
# Using Test-DbaConnection from dbatools and suppressing console warnings while capturing them
$testResult = Test-DbaConnection -SqlInstance $ServerInstance -ErrorAction Stop -WarningAction SilentlyContinue -WarningVariable connWarnings
if ($testResult.Connect -eq $true) {
if ($testResult -and $testResult.Connect -eq $true) {
# If connection is successful, get some basic instance info
$instanceInfo = Get-DbaInstance -SqlInstance $ServerInstance -ErrorAction Stop
$instanceInfo = Get-DbaInstance -SqlInstance $ServerInstance -ErrorAction Stop -WarningAction SilentlyContinue
return @{
Success = $true
Instance = $instanceInfo.Name
@@ -37,10 +38,18 @@ function Test-SQLConnection {
Status = "Online"
}
} else {
return @{ Success = $false; Error = "Connection failed." }
$errDetail = "Connection failed."
if ($connWarnings) {
$errDetail = "$errDetail ($($connWarnings -join '; '))"
}
return @{ Success = $false; Error = $errDetail }
}
} catch {
return @{ Success = $false; Error = $_.Exception.Message }
$errMsg = $_.Exception.Message
if ($connWarnings) {
$errMsg = "$errMsg ($($connWarnings -join '; '))"
}
return @{ Success = $false; Error = $errMsg }
}
}
@@ -54,9 +63,10 @@ function Get-SQLDatabases {
[string]$ServerInstance
)
$dbWarnings = $null
try {
# Using Get-DbaDatabase from dbatools
$databases = Get-DbaDatabase -SqlInstance $ServerInstance -ErrorAction Stop
# Using Get-DbaDatabase from dbatools and suppressing console warnings while capturing them
$databases = Get-DbaDatabase -SqlInstance $ServerInstance -ErrorAction Stop -WarningAction SilentlyContinue -WarningVariable dbWarnings
$dbList = @()
foreach ($db in $databases) {
$dbList += [pscustomobject]@{
@@ -68,7 +78,11 @@ function Get-SQLDatabases {
}
return $dbList
} catch {
throw "Failed to get databases: $($_.Exception.Message)"
$errMsg = $_.Exception.Message
if ($dbWarnings) {
$errMsg = "$errMsg ($($dbWarnings -join '; '))"
}
throw "Failed to get databases: $errMsg"
}
}