sql >> Databáze >  >> Database Tools >> SSMS

Jak odešlete více příkazů do Sql PowerShell z příkazového řádku Windows?

Pokud máte každou jednotlivou novou položku uvedenou na samostatném řádku v souboru PS1, například za předpokladu, že mám soubor s názvem register.ps1 s následujícími řádky.:

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 můžete nazvat takto:

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

Lepším řešením by bylo přidat parametry do register.ps1

param($ServerInstance)

cd 'SQLSERVER:\sqlregistration\Database Engine Server Group\'
New-Item $(Encode-Sqlname $server) -itemtype registration -Value "server=$serverInstance;integrated security=true"

Poté vytvořte soubor se seznamem instancí SQL, například server.txt:

server1
server2

Volejte register.ps1 pro každý řádek:

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


  1. Složený klíč jako cizí klíč (sql)

  2. Problém s importem/nahrazením tabulky v CSV v phpMyAdmin:Neplatný počet sloupců ve vstupu CSV na řádku 1

  3. Microsoft SQL Server kopírování a vkládání výsledků do Excelu nefunguje

  4. Prohlášení o aktualizaci MySQL:Neznámá 'tabulka' v 'seznamu polí'