admin

Azure SQL:在Adventureworks上使用Powershell的“泪nvoke-sqlcmd”无效的对象名称

sql

我是SQL的新手,尝试使用PowerShell的查询Azure SQL数据库(Adventureworks示例)Invoke-SQLCmd

当我在Powershell中尝试以下命令时:

Invoke-Sqlcmd -Query "SELECT * FROM SalesLT.Customer;" -ServerInstance 
"<servername>.database.windows.net" -Username <username> -Password <password>

我得到:

Invoke-Sqlcmd : Invalid object name 'SalesLT.Customer'.

我需要指定该表所在的数据库吗?即是“ SQLDatabse”而不是“ master”?但是,当我添加Use SQLDatabase到查询中时,它将引发另一个错误:

USE statement is not supported to switch between databases. Use a new     
connection to connect to a different database.

注意: 从SQL Server Management Studio执行这些查询可以使我的表没有错误。

谢谢!


阅读 149

收藏
2021-06-07

共1个答案

admin

-Database [dbname]在命令参数中添加一个:

Invoke-Sqlcmd -Query "SELECT * FROM SalesLT.Customer;" 
    -ServerInstance "<servername>.database.windows.net" 
    -Username <username> -Password <password> -Database <dbname>

https://msdn.microsoft.com/zh-
CN/library/cc281720.aspx

2021-06-07