Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
После перехода к узлу в пути поставщика ядро СУБД можно выполнить работу или получить информацию с помощью методов и свойств из объекта управления ядро СУБД, связанного с узлом.
Замечание
Существует два модуля SQL Server PowerShell; SqlServer и SQLPS.
Модуль SqlServer — это текущий модуль PowerShell для использования.
Модуль SQLPS включен в установку SQL Server (для обратной совместимости), но больше не обновляется.
Модуль SqlServer содержит обновленные версии командлетов в SQLPS и включает новые командлеты для поддержки последних функций SQL.
Установите модуль SqlServer из коллекции PowerShell.
Дополнительные сведения см. в SQL Server PowerShell.
После перехода к узлу в пути поставщика ядра СУБД можно выполнить два типа действий:
Можно запускать командлеты Windows PowerShell, работающие с узлами, такие как Rename-Item.
Методы можно вызвать из связанной объектной модели управления SQL Server, например SMO. Например, если перейти в пути к узлу Databases, то можно использовать методы и свойства класса
<xref:Microsoft.SqlServer.Management.Smo.Database>.
Поставщик SQL Server используется для управления объектами в экземпляре ядро СУБД. Он не предназначен для работы с данными в базах данных. Если выбрана таблица или представление, нельзя использовать поставщик для выбора, вставки, обновления или удаления данных. Чтобы запросить или изменить данные в таблицах и представлениях из среды Windows PowerShell, воспользуйтесь командлетом Invoke-Sqlcmd . Дополнительные сведения см. в разделе Invoke-Sqlcmd.
Перечисление методов и свойств
Перечисление методов и свойств
Командлет Get-Member используется для просмотра методов и свойств, доступных для определенных объектов или классов объектов.
Пример. Перечисление методов и свойств
В этом примере задается переменная Windows PowerShell для класса <xref:Microsoft.SqlServer.Management.Smo.Database> модели SMO и перечисляются методы и свойства:
$MyDBVar = New-Object Microsoft.SqlServer.Management.SMO.Database
$MyDBVar | Get-Member -Type Methods
$MyDBVar | Get-Member -Type Properties
Командлет Get-Member также можно использовать для вывода методов и свойств, связанных с конечным узлом пути Windows PowerShell.
В этом примере выполняется переход к узлу Databases на диске SQLSERVER и перечисление свойства коллекции.
Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases
Get-Item . | Get-Member -Type Properties
Этот пример переходит к AdventureWorks2022 узлу в SQLSERVER: путь и перечисляет свойства объекта:
Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2022
Get-Item . | Get-Member -Type Properties
Использование методов и свойств
Использование методов и свойств SMO
Для выполнения работы с объектами из пути поставщика ядро СУБД можно использовать методы и свойства SMO.
Пример. Использование методов и свойств
В этом примере свойство схемы SMO используется для получения списка таблиц из схемы Sales в AdventureWorks2022:
Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2022\Tables
Get-ChildItem | where {$_.Schema -eq "Sales"}
В этом примере используется метод скрипта SMO для создания скрипта, содержащего инструкции CREATE VIEW , необходимо повторно создать представления в AdventureWorks2022:
Remove-Item C:\PowerShell\CreateViews.sql
Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2022\Views
foreach ($Item in Get-ChildItem) { $Item.Script() | Out-File -Filepath C:\PowerShell\CreateViews.sql -append }
В этом примере используется метод Create модели SMO, чтобы создать базу данных, а затем используется свойство State , чтобы показать, существует ли эта база данных:
Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases
$MyDBVar = New-Object Microsoft.SqlServer.Management.SMO.Database
$MyDBVar.Parent = (Get-Item ..)
$MyDBVar.Name = "NewDB"
$MyDBVar.Create()
$MyDBVar.State