我正在使用invoke-sqlcmd和invoke-sqlcmd2对SQL服务器运行查询。
有没有办法更改它运行的ApplicationName?当我运行探查器跟踪时,我看到查询由“.Net SqlClient Data Provider”运行,我想改变它。
任何帮助非常感谢
答案 0 :(得分:1)
好的,使用Chad Miller的invoke-sqlcmd2脚本,并想出了这个:
第45行,在“datarow”之后我添加了一个逗号,然后:
[Parameter(Position=9, Mandatory=$false)] [string]$ApplicationName='Powershell'
然后修改连接字符串(关于第54行):
if ($Username)
{ $ConnectionString = "Server={0};Database={1};User ID={2};Password={3};Application Name={5};Trusted_Connection=False;Connect Timeout={4}" -f $ServerInstance,$Database,$Username,$Password,$ConnectionTimeout,$ApplicationName }
else
{ $ConnectionString = "Server={0};Database={1};Integrated Security=True;Application Name={3};Connect Timeout={2}" -f $ServerInstance,$Database,$ConnectionTimeout,$ApplicationName }
默认Appname现在是“Powershell”,但可以使用-ApplicationName参数进行更改。
答案 1 :(得分:0)
在您的连接字符串中包含Application Name=MyAppName;
,这将是在探查器中显示的内容。