我想要一个用作输入的PowerShell脚本;
-username
-password
-remote servername
然后列出远程SQL数据库。事实上,它应该可以在任何带有PowerShell的PC上运行,即使没有使用/安装/插件的SQL客户端/工具。标准的.NET框架调用是可以接受的。
我知道这是可能的,因为我已经看过“s-clientless'机器远程列出数据库。
答案 0 :(得分:2)
以下内容适用于安装的.NET Framework :
function Get-SqlDatabases
{
[CmdletBinding()]
Param
(
$Server,
$User,
$Password
)
$sqlConnection = New-Object System.Data.SqlClient.SqlConnection "Data Source=$Server;User ID=$User;Password=$Password"
$sqlConnection.Open();
$sqlConnection.GetSchema("Databases") | select -expand database_name
$sqlConnection.Close();
}
<强>用法:强>
Get-SqlDatabases -Server 'myServer' -User 'myUser' -Password 'mySecret'