2008-11-06 4 views
3

J'ai un programme qui exécute osql.exe à partir du répertoire des outils du serveur microsoft sql et exécute un script.Est-ce que osql.exe peut fonctionner en mode autonome?

Le problème est que sur les ordinateurs qui n'ont pas une installation de serveur SQL, cet outil est manquant. Donc ma question est de savoir s'il est possible ou non de l'exécuter en tant que standalone (avec n'importe quelle DLL qui peut être nécessaire) ce qui signifie que les exécuter à partir de Process.Start à partir d'un répertoire local de l'application.

Répondre

1

Oui, vous pouvez. Il suffit de copier le binaire et vous partez.

+0

Avec SQL Server 2012, vous devez également copier osql.rll, puis cela fonctionne. Les chemins d'accès par défaut sont 'C: \ Program Files \ Microsoft SQL Server \ 120 \ Outils \ Binn \ OSQL.EXE' et' C: \ Program Files \ Microsoft SQL Server \ 120 \ Outils \ Binn \ Ressources \ 1033 \ osql.rll' . – OutstandingBill

0

Pourquoi lancez-vous osql?

J'ai écrit des programmes simples pour exécuter des scripts en utilisant SMO - principalement inséré par this post.

EDIT

Le jist du poste est d'utiliser SQL Server Management Objects (SMO). Server.ConnectionContext.ExecuteNonQuery analyse SQL avec GO instructions en elle.

+0

c'est une application déjà écrite (pas par moi), et je ne veux pas changer sa façon d'exécuter le script. – Konstantinos

+0

C'est un moyen astucieux de tester les bons ports ouverts entre les serveurs. – OutstandingBill

Questions connexes