列出没有客户端软件的远程SQL数据库

时间:2017-01-10 06:48:56

标签: sql-server database powershell

我想要一个用作输入的PowerShell脚本;

-username 
-password
-remote servername

然后列出远程SQL数据库。事实上,它应该可以在任何带有PowerShell的PC上运行,即使没有使用/安装/插件的SQL客户端/工具。标准的.NET框架调用是可以接受的。

我知道这是可能的,因为我已经看过“s-clientless'机器远程列出数据库。

1 个答案:

答案 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'