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


Программа sqlps

Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)

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

Внимание

Эта функция будет удалена в будущей версии SQL Server. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется. Вместо этого используйте модуль PowerShell sqlps . Дополнительные сведения о модуле sqlps см. в разделе Import the SQLPS Module.

Синтаксис

  
sqlps   
[ [ [ -NoLogo ][ -NoExit ][ -NoProfile ]  
    [ -OutPutFormat { Text | XML } ] [ -InPutFormat { Text | XML } ]  
  ]  
  [ -Command { -  
             | script_block [ -args argument_array ]  
             | string [ command_parameters ]  
             }  
  ]  
]  
[ -? | -Help ]  

Аргументы

-NoLogo
Указывает, что служебная программа sqlps не должна отображать баннер со сведениями об авторских правах при запуске.

-NoExit
Указывает, что служебная программа sqlps должна продолжать выполняться после выполнения команд запуска.

-NoProfile
Указывает служебной программе sqlps не загружать профиль пользователя. В профилях пользователей записываются часто используемые псевдонимы, функции и переменные для использования в различных сеансах PowerShell.

-OutPutFormat { Text | XML }
Указывает, что выходные данные служебной программы sqlps будут отформатированы в виде текстовых строк (Text) либо представлены в сериализованном формате CLIXML (XML).

-InPutFormat { Text | XML }
Указывает, что входные данные служебной программы sqlps отформатированы в виде текстовых строк (Text) либо представлены в сериализованном формате CLIXML (XML).

-Command
Указывает команду для выполнения служебной программой sqlps . Служебная программа sqlps выполняет команду, а затем завершает работу, если только не указан параметр -NoExit . После параметра -Commandне следует указывать какие-либо иные параметры, так как они будут интерпретироваться как параметры команды.

-
-Command — указывает, что служебная программа sqlps считывает входные данные с помощью стандартного ввода.

блок_скрипта [ -argsмассив_аргументов ]
Указывает блок команд PowerShell для выполнения, который должен быть заключен в фигурные скобки: {}. Параметрблок_скрипта можно указывать только в случае вызова служебной программы sqlps из PowerShell или другого сеанса служебной программы sqlps . Параметр массив_аргументов представляет собой массив переменных PowerShell, содержащий аргументы для команд PowerShell из параметра блок_скрипта.

string [ параметры_команды ]
Указывает строку, содержащую команды PowerShell для запуска. Используйте формат "&{команда}". Кавычки определяют строку, а оператор вызова (&) предписывает служебной программе sqlps выполнить команду.

[ -? | -Help ]
Показывает синтаксис параметров служебной программы sqlps .

Замечания

Программа sqlps запускает среду PowerShell (PowerShell.exe) и загружает модуль SQL Server PowerShell. Модуль, также именуемый sqlps, загружает и регистрирует следующие оснастки SQL Server PowerShell:

  • Microsoft.SqlServer.Management.PSProvider.dll

    Реализует поставщик SQL Server PowerShell и связанные с ним командлеты, такие как Encode-SqlName и Decode-SqlName.

  • Microsoft.SqlServer.Management.PSSnapin.dll

    Реализует командлеты Invoke-Sqlcmd и Invoke-PolicyEvaluation .

С помощью служебной программы sqlps можно делать следующее.

  • Вводить команды PowerShell в интерактивном режиме.

  • Запускать файлы скриптов PowerShell.

  • Выполнять командлеты SQL Server.

  • Используйте пути поставщика SQL Server для перехода по иерархии объектов SQL Server.

По умолчанию служебная программа sqlps запускается с политикой выполнения сценариев со значением Ограничено. Это предотвращает запуск любых скриптов PowerShell. Командлет Set-ExecutionPolicy обеспечивает возможность запуска как подписанных, так и любых других скриптов. Запускать следует только скрипты из надежных источников, а также рекомендуется защитить все входные и выходные файлы соответствующими разрешениями NTFS. Дополнительные сведения о включении скриптов PowerShell см. в разделе Запуск скриптов Windows PowerShell.

Версия служебной программы sqlps в SQL Server 2008 (10.0.x) и SQL Server 2008 R2 (10.50.x) была реализована в виде мини-оболочки Windows PowerShell 1.0. Мини-оболочки имеют определенные ограничения, такие как запрет на загрузку пользователями других оснасток, помимо загруженных мини-оболочкой. Эти ограничения не относятся к Microsoft SQL Server 2012 (11.x) и более поздним версиям программы, где стал использоваться модуль sqlps.

Примеры

А. Запуск служебной программы sqlps в режиме по умолчанию (интерактивном) без баннера со сведениями об авторских правах

sqlps -NoLogo  

B. Запуск сценария SQL Server PowerShell из командной строки

sqlps -Command "&{.\MyFolder.MyScript.ps1}"  

В. Запуск сценария SQL Server PowerShell из командной строки с продолжением выполнения после завершения сценария

sqlps -NoExit -Command "&{.\MyFolder.MyScript.ps1}"  

См. также

Включение или отключение сетевого протокола сервера
SQL Server PowerShell