sql >> データベース >  >> Database Tools >> SSMS

WindowsコマンドラインからSQLPowerShellに複数のコマンドを送信するにはどうすればよいですか?

    PS1ファイルの個別の行に個々の新しいアイテムがリストされている場合。たとえば、次の行を含むregister.ps1という名前のファイルがあるとします。:

    cd 'SQLSERVER:\sqlregistration\Database Engine Server Group\'; new-item $(Encode-Sqlname server1) -itemtype registration -Value "server=server1;integrated security=true" 
    cd 'SQLSERVER:\sqlregistration\Database Engine Server Group\'; new-item $(Encode-Sqlname server2) -itemtype registration -Value "server=server1;integrated security=true" 
    

    次のようにsqlpsを呼び出すことができます:

    sqlps -NoExit -Command "&{C:\bin\register.ps1}"
    

    より良い解決策は、register.ps1

    にパラメータを追加することです。
    param($ServerInstance)
    
    cd 'SQLSERVER:\sqlregistration\Database Engine Server Group\'
    New-Item $(Encode-Sqlname $server) -itemtype registration -Value "server=$serverInstance;integrated security=true"
    

    次に、SQLインスタンスのリストを含むファイルを作成します(例:server.txt:

    )。
    server1
    server2
    

    回線ごとにregister.ps1を呼び出します:

    get-content C:\bin\server.txt | foreach {C:\bin\register.ps1 $_ }
    


    1. (すべて選択)を使用するとSSRSレコードが表示されないが、特定の値を選択すると表示される

    2. データベースのSQLビットフィールドを更新します

    3. SQL Server2008R2インテリセンスが機能しない

    4. .xlsxをSQLサーバー2008データベースにエクスポートできません