Import the SQLPS Module

THIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

The recommended way to manage SQL Server from PowerShell is to import the sqlps module into a Windows PowerShell environment. The module loads and registers the SQL Server snap-ins and manageability assemblies. Beginning in Windows PowerShell 3.0, modules are imported automatically when any cmdlet or function in the module is used in a command. This feature works on any module in a directory that this included in the value of the PSModulePath environment variable. For additional information, see Importing a PowerShell Module

  1. Before You Begin: Security

  2. To load the module: Load the sqlps Module

Before You Begin

After importing the sqlps module into Windows PowerShell, you can then:

  • Interactively run Windows PowerShell commands.

  • Run Windows PowerShell script files.

  • Run SQL Server cmdlets.

  • Use the SQL Server provider paths to navigate through the hierarchy of SQL Server objects.

  • Use the SQL Server manageability object models (such as Microsoft.SqlServer.Management.Smo) to manage SQL Server objects.


The verbs used in the names of two SQL Server cmdlets (Encode-Sqlname and Decode-Sqlname) do not match the approved verbs for Windows PowerShell. This has no effect on their operation, but Windows PowerShell raises a warning when the sqlps module is imported to a session.


By default, Windows PowerShell runs with the scripting execution policy set to Restricted, which prevents running any Windows PowerShell scripts. To load the sqlps module, you can use the Set-ExecutionPolicy cmdlet to enable running signed scripts, or any scripts. Only run scripts from trusted sources, and secure all input and output files using the appropriate NTFS permissions. For more information about enabling Windows PowerShell scripts, see Running Windows PowerShell Scripts.

Load the sqlps Module

To load the sqlps module in Windows PowerShell

  1. Use the Set-ExecutionPolicy cmdlet to set the appropriate script execution policy.

  2. Use the Import-Module cmdlet to import the sqlps module. Specify the DisableNameChecking parameter if you want to suppress the warning about Encode-Sqlname and Decode-Sqlname.


This example loads the sqlps module with name checking turned off.

# Import the SQL Server Module.    
Import-Module Sqlps -DisableNameChecking;

# To check whether the module is installed.
Get-Module -ListAvailable -Name Sqlps;


If the sqlps module is not in your path, change to the location of the module or use the full path in the script (using double-quotes of folders in your path have spaces). The sqlps module is located in the Tools\Powershell folder for your SQL Server instance.

Arrow icon used with Back to Top link [Top]

See Also

SQL Server PowerShell
SQL Server PowerShell Provider
Use the Database Engine cmdlets
Installing a PowerShell Module