PowerShell-szerkesztő támogatása az Azure Data Studióhoz
Ez a bővítmény gazdag PowerShell-szerkesztői támogatást nyújt az Azure Data Studióban. Mostantól PowerShell-szkripteket írhat és hibakeresést végezhet az Azure Data Studio kiváló IDE-szerű felületével.
Funkciók
- Szintaxiskiemelés
- Kódminták
- IntelliSense parancsmagokhoz és egyebekhez
- A PowerShell-szkriptelemző által biztosított szabályalapú elemzés
- Ugrás a parancsmagok és változók definíciójára
- Parancsmagok és változók hivatkozásainak keresése
- Dokumentum- és munkaterületszimbólumok felderítése
- A PowerShell-kód kijelölt kiválasztásának futtatása az F8 használatával
- Online súgó indítása a kurzor alatti szimbólumhoz a Ctrl F1 billentyűkombinációval +
- Alapszintű interaktív konzoltámogatás!
A bővítmény telepítése
A PowerShell-bővítmény hivatalos kiadását az Azure Data Studio dokumentációjának lépéseit követve telepítheti. A Bővítmények panelen keressen rá a "PowerShell" bővítményre, és telepítse ott. A bővítmény jövőbeli frissítéseiről automatikusan értesítést kap!
A VSIX-csomagokat a Kiadások lapról is telepítheti, és a parancssoron keresztül telepítheti:
azuredatastudio --install-extension PowerShell-<version>.vsix
Platformtámogatás
- Windows 7–10 a Windows PowerShell 3-as vagy újabb verziójával és a PowerShell Core-ral
- Linux és PowerShell Core (minden PowerShell által támogatott disztribúció)
- macOS és PowerShell Core
A gyakori kérdésekre adott válaszokért olvassa el a gyakori kérdéseket.
A PowerShell Core telepítése
Ha macOS vagy Linux rendszeren futtatja az Azure Data Studiót, előfordulhat, hogy a PowerShell Core-t is telepítenie kell.
A PowerShell Core egy nyílt forráskódú projekt a GitHubon. A PowerShell Core macOS- vagy Linux-platformokon való telepítéséről az alábbi cikkekben talál további információt:
Példaszkriptek
A bővítmény mappájában examples
néhány példaszkript található, amelyekkel felfedezheti a PowerShell szerkesztési és hibakeresési funkcióit. A használatukról további információt a mellékelt README.md fájlban olvashat.
Ez a mappa a következő elérési úton található:
$HOME/.azuredatastudio/extensions/microsoft.powershell-<version>/examples
vagy ha a bővítmény előzetes verzióját használja
$HOME/.azuredatastudio/extensions/microsoft.powershell-preview-<version>/examples
A bővítmény példáinak az Azure Data Studióban való megnyitásához/megtekintéséhez futtassa a következő kódot a PowerShell parancssorából:
azuredatastudio (Get-ChildItem $Home\.azuredatastudio\extensions\microsoft.powershell-*\examples)[-1]
Fájlok létrehozása és megnyitása
Ha új fájlt szeretne létrehozni és megnyitni a szerkesztőben, használja a New-EditorFile fájlt a PowerShell integrált termináljából.
PS C:\temp> New-EditorFile ExportData.ps1
Ez a parancs bármilyen fájltípushoz használható, nem csak PowerShell-fájlokhoz.
PS C:\temp> New-EditorFile ImportData.py
Ha egy vagy több fájlt szeretne megnyitni az Azure Data Studióban, használja a Open-EditorFile
parancsot.
Open-EditorFile ExportData.ps1, ImportData.py
Nincs fókusz a konzolon a végrehajtáskor
Azok a felhasználók, akik az SSMS-sel dolgoznak, megszokhatták, hogy végrehajthat egy lekérdezést, majd újra végrehajthatja anélkül, hogy vissza kellene váltania a lekérdezéspanelre. Ebben az esetben a kódszerkesztő alapértelmezett viselkedése furcsának tűnhet Önnek. Ha a szerkesztőben szeretné tartani a fókuszt az F8-nal végzett végrehajtáskor, módosítsa az alábbi beállítást:
"powershell.integratedConsole.focusConsoleOnExecute": false
Az alapértelmezett beállítás true
a kisegítő lehetőségekre szolgál.
Vegye figyelembe, hogy ez a beállítás megakadályozza, hogy a fókusz a konzolra váltson, még akkor is, ha olyan parancsot használ, amely explicit módon kéri a bemenetet, például Get-Credential
.
SQL PowerShell-példák
Az alábbi példák használatához telepítenie kell az SqlServer modult a PowerShell-galéria.
Install-Module -Name SqlServer
Feljegyzés
A verzió és a fel verziójú 21.1.18102
modul a Windows PowerShell mellett támogatja a SqlServer
PowerShell Core 6.2-es és újabb verzióit is.
Ebben a példában a Get-SqlInstance
parancsmaggal szerezzük be a ServerA & ServerB kiszolgálói SMO-objektumait. A parancs alapértelmezett kimenete a példányok példánynevét, verzióját, szervizcsomagját és & CU frissítési szintjét tartalmazza.
Get-SqlInstance -ServerInstance ServerA, ServerB
Íme egy példa a kimenet megjelenésére:
Instance Name Version ProductLevel UpdateLevel HostPlatform HostDistribution
------------- ------- ------------ ----------- ------------ ----------------
ServerA 13.0.5233 SP2 CU4 Windows Windows Server 2016 Datacenter
ServerB 14.0.3045 RTM CU12 Linux Ubuntu
A SqlServer
modul tartalmaz egy szolgáltatót, SQLRegistration
amely lehetővé teszi a mentett SQL Server-kapcsolatok programozott elérését:
- Adatbázismotor-kiszolgáló (regisztrált kiszolgálók)
- Központi felügyeleti kiszolgáló (CMS)
- Analysis Services
- Integrációs szolgáltatások
- Reporting Services
Az alábbi példában egy dir
(alias for Get-ChildItem
) műveletet hajtunk végre a regisztrált kiszolgálók fájljában felsorolt összes SQL Server-példány listájának lekéréséhez.
dir 'SQLSERVER:\SQLRegistration\Database Engine Server Group' -Recurse
Íme egy példa a kimenet megjelenésére:
Mode Name
---- ----
- ServerA
- ServerB
- localhost\SQL2017
- localhost\SQL2016Happy
- localhost\SQL2017
Számos olyan művelethez, amely adatbázist vagy adatbázison belüli objektumot tartalmaz, a Get-SqlDatabase
parancsmag használható. Ha mind a paraméterek, mind a -ServerInstance
-Database
paraméterek értékeit adja meg, a rendszer csak azt az adatbázis-objektumot kéri le. Ha azonban csak a paramétert adja meg, a rendszer visszaadja az -ServerInstance
adott példány összes adatbázisának teljes listáját.
Íme egy példa a kimenet megjelenésére:
Name Status Size Space Recovery Compat. Owner
Available Model Level
---- ------ ---- ---------- -------- ------- -----
AdventureWorks2017 Normal 336.00 MB 57.01 MB Simple 140 sa
master Normal 6.00 MB 368.00 KB Simple 140 sa
model Normal 16.00 MB 5.53 MB Full 140 sa
msdb Normal 48.44 MB 1.70 MB Simple 140 sa
PBIRS Normal 144.00 MB 55.95 MB Full 140 sa
PBIRSTempDB Normal 16.00 MB 4.20 MB Simple 140 sa
SSISDB Normal 325.06 MB 26.21 MB Full 140 sa
tempdb Normal 72.00 MB 61.25 MB Simple 140 sa
WideWorldImporters Normal 3.2 GB 2.6 GB Simple 130 sa
Ez a következő példa a Get-SqlDatabase
parancsmaggal lekéri a ServerB-példány összes adatbázisának listáját, majd egy rácsot/táblát mutat be (a Out-GridView
parancsmag használatával) annak kiválasztásához, hogy mely adatbázisokról kell biztonsági másolatot készíteni. Miután a felhasználó az "OK" gombra kattint, csak a kiemelt adatbázisokról készít biztonsági másolatot.
Get-SqlDatabase -ServerInstance ServerB |
Out-GridView -PassThru |
Backup-SqlDatabase -CompressionOption On
Ez a példa ismét lekéri a regisztrált kiszolgálók fájljában felsorolt ÖSSZES SQL Server-példány listáját, majd meghívja az Get-SqlAgentJobHistory
összes sikertelen SQL Agent-feladatot éjfél óta, minden felsorolt SQL Server-példányhoz.
dir 'SQLSERVER:\SQLRegistration\Database Engine Server Group' -Recurse |
WHERE {$_.Mode -ne 'd' } |
FOREACH {
Get-SqlAgentJobHistory -ServerInstance $_.Name -Since Midnight -OutcomesType Failed
}
Ebben a példában létrehozunk egy dir
(alias) Get-ChildItem
parancsot a regisztrált kiszolgálók fájljában felsorolt összes SQL Server-példány listájának lekéréséhez, majd a Get-SqlDatabase
parancsmag használatával lekérjük az egyes példányok adatbázisainak listáját.
dir 'SQLSERVER:\SQLRegistration\Database Engine Server Group' -Recurse |
WHERE { $_.Mode -ne 'd' } |
FOREACH {
Get-SqlDatabase -ServerInstance $_.Name
}
Íme egy példa a kimenet megjelenésére:
Name Status Size Space Recovery Compat. Owner
Available Model Level
---- ------ ---- ---------- -------- ------- -----
AdventureWorks2017 Normal 336.00 MB 57.01 MB Simple 140 sa
master Normal 6.00 MB 368.00 KB Simple 140 sa
model Normal 16.00 MB 5.53 MB Full 140 sa
msdb Normal 48.44 MB 1.70 MB Simple 140 sa
PBIRS Normal 144.00 MB 55.95 MB Full 140 sa
PBIRSTempDB Normal 16.00 MB 4.20 MB Simple 140 sa
SSISDB Normal 325.06 MB 26.21 MB Full 140 sa
tempdb Normal 72.00 MB 61.25 MB Simple 140 sa
WideWorldImporters Normal 3.2 GB 2.6 GB Simple 130 sa
Jelentéskészítési problémák
Ha bármilyen problémát tapasztal a PowerShell-bővítménysel kapcsolatban, tekintse meg a hibaelhárítási dokumentációt a problémák diagnosztizálásával és jelentésével kapcsolatos információkért.
Biztonsági megjegyzés
A biztonsági problémákról itt olvashat.
Hozzájárulás a kódhoz
A bővítményhez való hozzájárulásról további információt a fejlesztési dokumentációban talál!
Karbantartók
- Keith Hill - @r_keith_hill
- Tyler Leonhardt - @TylerLeonhardt
- Rob Holt
Licenc
Ez a bővítmény az MIT licenccel rendelkezik. A projekt kiadásait tartalmazó harmadik fél bináris fájljaival kapcsolatos részletekért tekintse meg a külső felek értesítési fájlját .
Viselkedési szabályzat
Ez a projekt a Microsoft nyílt forráskóddal kapcsolatos viselkedési szabályzata alapján működik. További információért tekintse át a viselkedési szabályzat GYIK dokumentumát, illetve további kérdések vagy megjegyzések esetén írjon az opencode@microsoft.com e-mail-címre.