I have sqlcmd.exe both SQLServer 2008 and SQLServer 2012:
PS C:\> Get-Command sqlcmd.exe Definition ---------- C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE C:\Program Files\Microsoft SQL Server\110\Tools\Binn\SQLCMD.EXE
After changing $env:PATH , force use sqlcmd.exe from SQL Server 2012:
PS C:\> $env:PATH = ($env:PATH -split ";" | Where-Object { $_ -notlike "*\Microsoft SQL Server\100\*" }) -join ";" PS C:\> Get-Command sqlcmd.exe Definition ---------- C:\Program Files\Microsoft SQL Server\110\Tools\Binn\SQLCMD.EXE
The LocalDB instance is started by default and belongs to the current user:
PS C:\> sqllocaldb i v11.0 Name: v11.0 Version: 11.0.2318.0 Shared name: Owner: DOMAIN\me Auto-create: Yes State: Running Last start time: 12/06/13 18:17:57 Instance pipe name: np:\\.\pipe\LOCALDB
Now I can execute the command on (localdb)\v11.0 using sqlcmd.exe
PS C:\> sqlcmd.exe -S "(localdb)\v11.0" -Q "select 1" ----------- 1
But when you try to do the same with Invoke-Sqlcmd , I get a connection error:
PS C:\> Import-Module sqlps PS C:\> Invoke-Sqlcmd -ServerInstance "(localdb)\v11.0" -Query "select 1" Invoke-Sqlcmd : A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)
What can I do to make lmake Invoke-Sqlcmd connect to (localdb)\v11.0 ?
powershell sql-server-2012 localdb sqlps
Gian marco gherardi
source share