【发布时间】:2012-10-16 13:00:23
【问题描述】:
我有一个大型的现有 powershell 脚本库,主要用于运行 SQL Server 和文件系统之间的一些复杂逻辑和交互。
SQL 交互通常通过 cmdlet Invoke-SQLCmd 执行。
最近我所有服务器上的 SSMS 版本都升级到了 2012。这意味着我必须对我的代码进行一些更改以删除对 sqlserverprovidersnapin100 和 sqlservercmdletsnapin100 的引用,因为它们在 2012 年被弃用以支持导入SQLPs 模块。
这工作正常,但似乎SQLPs 模块在某些时候将当前位置更改为PS SQLSERVER> 而不是<local folder>,这使得我的许多其他命令都失败了。例如,如果我在网络驱动器上运行Test-Path,它在<local folder> 位置运行良好,但在SQLSERVER 位置运行会失败。
这是一个已知问题吗?我可以为此更改解决方法或设置吗?
我担心的主脚本超过 1000 行,并且在我们进行此更改之前已经运行了两年多没有问题,所以如果可以的话,我想避免对其进行逐行测试。
【问题讨论】:
标签: powershell sql-server-2012