我的PowerShell脚本中的sqlps
出现问题。我正在尝试从表中选择行并将其保存到.csv
文件中。
查询为
$TABLE="events"
Import-Module sqlps
$SQLquery='SELECT * FROM dbo.$TABLE'
$result=invoke-sqlcmd -query $SQLquery -HostName LOCALHOST -Password test -Username test
$result |export-csv c:\TEST.csv -notypeinformation
我收到此错误:
invoke-sqlcmd : Login failed for user 'test'.
At line:6 char:9
+ $result=invoke-sqlcmd -query $SQLquery -HostName LOCALHOST -Password ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Invoke-Sqlcmd], SqlException
+ FullyQualifiedErrorId : SqlExectionError,Microsoft.SqlServer.Management.
PowerShell.GetScriptCommand
invoke-sqlcmd :
At line:6 char:9
+ $result=invoke-sqlcmd -query $SQLquery -HostName LOCALHOST -Password ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ParserError: (:) [Invoke-Sqlcmd], ParserException
+ FullyQualifiedErrorId : ExecutionFailureException,Microsoft.SqlServer.Management.PowerShell.GetScriptCommand
任何人都可以提供帮助吗?
答案 0 :(得分:1)
因此,主要问题是查询必须使用“”引号而不是“”引号,并且需要告知服务器明确允许Microsoft帐户登录和SQL登录。即使您有用于SQL登录的用户设置。该选项位于属性/安全性/服务器身份验证下。
如果有人像我一样遇到这个初学者问题,我就在这里留下这个答案。感谢社区的帮助,让我们尽快进行整理