Поделиться через


Поставщик SQL Server PowerShell

Поставщик SQL Server для Windows PowerShell предоставляет иерархию объектов SQL Server в путях, аналогичных путям файловой системы. Пути можно использовать для поиска объекта, а затем использовать методы из моделей объектов управления SQL Server для выполнения действий над объектами.

Замечание

Существует два модуля SQL Server PowerShell; SqlServer и SQLPS.

Модуль SqlServer — это текущий модуль PowerShell для использования.

Модуль SQLPS включен в установку SQL Server (для обратной совместимости), но больше не обновляется.

Модуль SqlServer содержит обновленные версии командлетов в SQLPS и включает новые командлеты для поддержки последних функций SQL.

Установите модуль SqlServer из коллекции PowerShell.

Дополнительные сведения см. в SQL Server PowerShell.

Преимущества поставщика SQL Server PowerShell

Пути, реализованные поставщиком SQL Server, позволяют легко и интерактивно просматривать все объекты в экземпляре SQL Server. Пути можно перемещать с помощью псевдонимов Windows PowerShell, аналогичных командам, которые обычно используются для навигации по путям файловой системы.

Иерархия SQL Server PowerShell

Продукты, данные или объектные модели которых могут быть представлены в иерархии, используют поставщики Windows PowerShell для предоставления иерархий. Иерархия предоставляется с помощью структуры диска и пути, аналогичной файловой системе Windows.

Каждый провайдер Windows PowerShell поддерживает один или несколько дисков. Каждый диск является корневым узлом иерархии связанных объектов. Поставщик SQL Server реализует диск SQLSERVER. Поставщик также определяет набор основных папок для диска SQLSERVER. Каждая папка и ее вложенные папки представляют объекты, к которым можно получить доступ с помощью объектной модели управления SQL Server. При сосредоточении вложенной папки в пути, который начинается с одной из этих основных папок, можно использовать методы из связанной объектной модели для выполнения действий над объектом, представленным узлом. Папки Windows PowerShell, реализованные поставщиком SQL Server, перечислены в следующей таблице:

Папка Пространство имен объектной модели SQL Server Объекты
SQLSERVER:\SQL Microsoft.SqlServer.Management.Smo
Microsoft.SqlServer.Management.Smo.Agent
Microsoft.SqlServer.Management.Smo.Broker
Microsoft.SqlServer.Management.Smo.Mail
Объекты базы данных, такие как таблицы, представления и хранимые процедуры.
SQLSERVER:\SQLPolicy Microsoft.SqlServer.Management.Dmf
Microsoft.SqlServer.Management.Facets
Объекты управления на основе политик, такие как политики и аспекты.
SQLSERVER:\SQLRegistration Microsoft.SqlServer.Management.RegisteredServers Зарегистрированные объекты сервера, такие как группы серверов и зарегистрированные серверы.
SQLSERVER:\DataCollection Microsoft.SqlServer.Management.Collector Объекты сборщика данных, такие как наборы сборок и хранилища конфигураций.
SQLSERVER:\SSIS Microsoft.SqlServer.Management.IntegrationServices Объекты служб SSIS, такие как проекты, пакеты и среды.
SQLSERVER:\XEvent Microsoft.SqlServer.Management.XEvent Расширенные события SQL Server
SQLSERVER:\DatabaseXEvent Microsoft.SqlServer.Management.XEventDbScoped Расширенные события SQL Server
SQLSERVER:\SQLAS Microsoft.AnalysisServices Объекты служб Analysis Services, такие как кубы, агрегации и измерения.

Например, можно использовать папку SQLSERVER:\SQL для запуска путей, представляющих любой объект, поддерживаемый объектной моделью SMO. Ведущая часть пути SQLSERVER:\SQL — это SQLSERVER:\SQL\Имя_компьютера\Имя_экземпляра. Узлы после альтернативного имени экземпляра между коллекциями объектов (например , базами данных или представлениями) и именами объектов (например AdventureWorks2022, ). Схемы не представлены как классы объектов. При указании узла для объекта верхнего уровня в схеме, например таблицы или представления, необходимо указать имя объекта в формате SchemaName.ObjectName.

В следующем примере показан путь к таблице "Поставщик" в схеме AdventureWorks2022 приобретения базы данных в экземпляре ядра СУБД по умолчанию на локальном компьютере:

SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2022\Tables\Purchasing.Vendor

Дополнительные сведения об иерархии объектной модели SMO см. в разделе /sql/реляционные базы данных/server-management-objects-smo/smo-object-model-diagram.

Узлы коллекции в пути связаны с классом коллекции в связанной объектной модели. Узлы имени объекта связаны с классом объектов в связанной объектной модели, как показано в следующей таблице:

Путь Класс SMO
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases Microsoft.SqlServer.Management.Smo.DatabaseCollection>
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases\AdventureWorks2022 Microsoft.SqlServer.Management.Smo.Database>

Задачи поставщика SQL Server

Описание задачи Статья
Описывает использование командлетов Windows PowerShell для перехода по узлам в пути и получения списка объектов на этом узле. Навигация по путям SQL Server PowerShell
Описывает, как использовать методы и свойства SMO для отчета и выполнения работы с объектом, который узел представляет в пути. Также описывается, как получить список методов и свойств SMO для этого узла. Работа с путями SQL Server PowerShell
Описывает преобразование универсального имени ресурса SMO (URN) в путь поставщика SQL Server. Convert-UrnToPath
Описание открытия подключений проверки подлинности SQL Server с помощью поставщика SQL Server. По умолчанию поставщик использует подключения проверки подлинности Windows, сделанные с использованием учетных данных учетной записи Windows под управлением сеанса Windows PowerShell. Управление аутентификацией в PowerShell для СУБД

Следующий шаг