11

J'utilise les outils externes de Visual Studio pour ouvrir des scripts .sql dans Sql Server Management Studio (SSMS). Le problème est, chaque fois que j'utilise la commande external tools pour ouvrir un fichier .sql à partir de Visual Studio, il ouvre une nouvelle instance de SSMS.Y at-il une option de ligne de commande comme devenv.exe/Edit pour Sql Server Management Studio

Visual Studio dispose d'un commutateur/Edit qui fera cela, y en a-t-il un pour SQL Server Management Studio?

+0

Est-ce que cela a changé du tout pour SSMS 2016? – TWilly

Répondre

12

Choisissez d'ouvrir le fichier avec Explorer [1] au lieu de SSMS. De cette façon, le système recherchera d'abord les instances existantes de SSMS.

[1]% windir% \ explorer.exe

+0

cela a bien fonctionné, merci pour la réponse. – TheEmirOfGroofunkistan

+0

Cela fonctionne comme si vous aviez double-cliqué sur votre fichier sql depuis l'Explorateur Windows (ou tapé le chemin dans la boîte Exécuter). Fonctionne parfaitement, merci! – sliderhouserules

+2

Malheureusement, un double clic sur le fichier ouvre une nouvelle instance de SSMS.exe pour moi. Peut-être parce que je suis en XP (pas ma décision!). Donc, malheureusement, cela n'a pas fonctionné pour moi. – jcollum

1

Je ne pense pas que le problème est avec la commande d'outil externe Visual Studio. Regardez les options de la ligne de commande SSMS - il existe peut-être un moyen de forcer la réutilisation de l'instance SSMS existante.

+0

Il me semble qu'il n'y en a pas. – jcollum

-3

Si vous associez cette extension de fichier à Visual Studio, VS devrait l'ouvrir.

Si vous constatez que VS démarre une nouvelle instance à chaque fois, vous devez spécifier l'option de ligne de commande/edit. Pour plus d'informations, consultez http://stevedunns.blogspot.com/2009/03/programs-that-launch-or-should-launch.html.

+0

C'est un commutateur cmd pour studio visuel, mais pas pour studio de gestion de serveur sql. Voir devenv.exe /? Je suis à la recherche de cette fonctionnalité exacte, mais pour SSMS. – TheEmirOfGroofunkistan

0

La bonne réponse est non. Le SSMS a un ensemble limité d'options, et bien qu'il utilise le framework VS, ne supporte pas la commande edit. Cela pourrait être une caractéristique intéressante à ajouter.

Je suppose que vous avez besoin d'ouvrir ces scripts dans SSMS pour pouvoir les exécuter aussi, sinon je suggérerais de les diriger vers Visual Studio directement car il supporte la coloration syntaxique. Cependant, cela ne résoudra pas votre problème.

1

Les œuvres suivantes pour moi (je suis SQL Server 2008 si):

Alors la vraie réponse que je quess est d'utiliser cmdow

edit: Après plus de tests, j'ai réalisé ce qui suit: d'abord ouvrir les fichiers avec connenction avec: (enlevez la pénètre pendant la copie, c'est une doublure)

"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 

Dans cet exemple, il ouvre deux fichiers (mais vous pouvez ouvrir moins bien sûr;) après quoi, peu importe combien de fois je cours

cmdow /Run "C:\Users\yordgeor\Desktop\Trigger1.sql" 
cmdow /Run "C:\Users\yordgeor\Desktop\Trigger2.sql" 
cmdow /Run "C:\Users\yordgeor\Desktop\Trigger3.sql" 

ouvre la même instance du Management Studio Microsoft Sql Server avec la même connexion

vous pouvez ouvrir à la fois à la ligne de commande de fichiers , mais je suppose que vous avez demandé la réponse supérieure.

Vous pouvez trouver le chemin du ssms.exe par: cd% programfiles%

dir * SSMS.exe/s/b

si la syntaxe de la commande est: pathToTheExe pathToFile1 pathToFile2 -S nomServeur -d DatabaseToConnectTo -E (toUseWindowsAuthentication) -nosplash

Après 20 secondes de googling je trompé de here:

Questions connexes