Azure SQL:使用 Powershell 的“Invoke-sqlcmd"的无效对象名称在 Advent

时间:2022-11-30
本文介绍了Azure SQL:使用 Powershell 的“Invoke-sqlcmd"的无效对象名称在 Adventureworks 上的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

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

I'm new to SQL, trying to query an Azure SQL Database (Adventureworks sample) using PowerShell's Invoke-SQLCmd.

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

When I try the following command in 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 添加到我的查询时,它会引发另一个错误:

Do I need to specify what Database that table is under? Namely, "SQLDatabse" instead of "master"? But when I add Use SQLDatabase to my query it throws another error:

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

注意:从 SQL Server Management Studio 执行这些查询会得到没有错误的表.

Note: Executing these queries from SQL Server Management Studio gets me the table with no errors.

谢谢!

推荐答案

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

Add a -Database [dbname] to the command parameters:

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

https://msdn.microsoft.com/en-us/library/cc281720.aspx

这篇关于Azure SQL:使用 Powershell 的“Invoke-sqlcmd"的无效对象名称在 Adventureworks 上的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:如何使用具有多个子节点的sql将表数据转换为xml格式 下一篇:如果有多个相同的 ID,Where 子句

相关文章

最新文章