2010-03-16 4 views
2

Je chargement d'un script SQL jusqu'à un SSMS 2008 add-in comme ceci:SSMS 2008 Add-In - Exécuter la requête

  ' create a new blank document 
     ServiceCache.ScriptFactory.CreateNewBlankScript(Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ScriptType.Sql) 

     ' insert SQL statement to the blank document 
     Dim doc As EnvDTE.TextDocument = CType(ServiceCache.ExtensibilityModel.Application.ActiveDocument.Object(Nothing), EnvDTE.TextDocument) 
     doc.EndPoint.CreateEditPoint().Insert(_Output.ToString()) 

Y at-il un moyen d'exécuter automatiquement l'instruction ainsi?

Merci,
Mark

Répondre

0

Je regardais autour de l'objet modèle et il n'a pas pu trouver la méthode « exécuter » - mais il doit une façon de le faire ...

Mais penser un peu en dehors de la boîte , vous pourriez le faire.

// Set the active document 
doc.DTE.ActiveDocument.Activate(); 

// Press F5 - which calls Execute. 
SendKeys.Send("{F5}"); 

D'accord, c'est un hack, mais cela pourrait vous aider à surmonter le problème pour le moment. :-)

2

Dans SSMS 2008 R2, il ressemblerait à ceci:

doc.DTE.ExecuteCommand("Query.Execute");