我正在使用 Visual Studio 的外部工具在 Sql Server Management Studio (SSMS) 中打开 .sql 脚本。问题是,每次我使用外部工具命令从 Visual Studio 打开一个 .sql 文件时,它都会打开一个新的 SSMS 实例。
Visual Studio 有一个开关 /Edit 可以执行此操作,是否有用于 SQL Server Management Studio 的开关?
我正在使用 Visual Studio 的外部工具在 Sql Server Management Studio (SSMS) 中打开 .sql 脚本。问题是,每次我使用外部工具命令从 Visual Studio 打开一个 .sql 文件时,它都会打开一个新的 SSMS 实例。
Visual Studio 有一个开关 /Edit 可以执行此操作,是否有用于 SQL Server Management Studio 的开关?
选择使用 Explorer[1] 而不是 SSMS 打开文件。这样,系统将首先搜索任何现有的 SSMS 实例。
[1] %windir%\explorer.exe
我认为问题不在于 Visual Studio 外部工具命令。查看 SSMS 命令行选项 - 也许有一种方法可以强制重用现有的 SSMS 实例。
以下对我有用(虽然我是 SQL Server 2008):
所以我想真正的答案是使用cmdow
编辑:经过更多测试后,我意识到以下内容:首先打开带有连接的文件:(复制时删除任何输入,这是一个衬里)
"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\
Common7\IDE\Ssms.exe" "C:\Users\yordgeor\Desktop\Trigger.sql"
"C:\Users\yordgeor\Desktop\Trigger1.sql" -S ysg -d poc_dev -E -nosplash
在这个例子中,它打开了两个文件(但你当然可以打开更少;)之后,无论我运行多少次
cmdow /Run "C:\Users\yordgeor\Desktop\Trigger1.sql"
cmdow /Run "C:\Users\yordgeor\Desktop\Trigger2.sql"
cmdow /Run "C:\Users\yordgeor\Desktop\Trigger3.sql"
它使用相同的连接打开 Microsoft Sql Server Management Studio 的相同实例
您可以在命令行一次打开许多文件,但我怀疑您要求上层答案。
因此,您可以通过以下方式找到 Ssms.exe 的路径: cd %ProgramFiles%
目录 *ssms.exe /s /b
所以命令的语法是: pathToTheExe pathToFile1 pathToFile2 -S serverName -d DatabaseToConnectTo -E (toUseWindowsAuthentication) -nosplash
正确答案是否定的。SSMS 有一组有限的选项,虽然它使用 VS 框架,但不支持编辑命令。这可能是一个有趣的功能。
我假设您需要在 SSMS 中打开这些脚本才能运行它们,否则我建议将它们直接指向 Visual Studio,因为它确实支持语法突出显示。但是,它不会解决您的问题。
如果您将该文件扩展名与 Visual Studio 相关联,则 VS 应该打开它。
如果您发现 VS 每次都启动一个新实例,那么您需要指定 /edit 命令行选项。
查看http://stevedunns.blogspot.com/2009/03/programs-that-launch-or-should-launch.html了解更多信息。