Utilisation de la ligne de commande SQL Server? C'est possible?

11

J'ai essayé d'utiliser «l'Explorateur de solutions» intégré à SQL Server Management Studio 2008 pour gérer un projet et après 2 semaines de lutte avec lui, j'ai décidé que je m'en fichais vraiment. Ses fonctionnalités de "commodité" sont en fait un obstacle.

Malheureusement, l'endroit où je travaille est un magasin MS et est plutôt coincé dans leurs habitudes. Je veux revenir à la ligne de commande (j'ai envie de Vim!). J'ai installé un dépôt local de subversion avec un frontal TortiseSVN, pour remplacer le "Solution Explorer" mentionné ci-dessus et le faire fonctionner assez bien. J'ai également installé Vim et tout en continuant à le personnaliser, le faire fredonner.

Cependant, la seule chose à laquelle je n'ai pas encore trouvé de solution est de savoir comment exécuter des commandes vers SQL Server via la ligne de commande. Je suis habitué à l'invite de ligne de commande MySQL / Postgres car c'est ce que j'ai utilisé dans le passé et que j'utilisais lors de mes cours. Cependant, je n'arrive pas à trouver un moyen d'exécuter mes scripts via la ligne de commande dans Windows. Je les édite actuellement dans Vim, actualise la page dans SSMS et l'exécute. Je préférerais même ne pas toucher SMSS, sauf en cas de besoin.

J'ai vu des articles suggérant sqlsharp, mais quand je suis allé sur la page, j'ai l'impression que ce n'est pas tout à fait ce que je recherche.

--Éditer

Je souhaite vraiment qu'il était possible d'avoir 2 coches de réponse. P. Campbell a la bonne réponse technique, et je l'ai essayée plusieurs fois (je reçois toujours une erreur lorsque j'essaie sqlcmd ... En recherchant que c'est ainsi que les tuyaux nommés fonctionnent ... Même si je l'ai installé et activé, cela ne semble pas fonctionner.)

Après avoir essayé et sans succès, j'ai essayé le copier-coller dans la méthode Management Studio, mais c'était ridicule ... J'ai donc décidé que HardCode était peut-être correct aussi.

Antiparadigm
la source

Réponses:

15

Avez-vous envisagé SQLCMD?

Voici un article sur l' utilisation de l'utilitaire de ligne de commande SQLCMD .

Vous pouvez exécuter des instructions SQL adhoc ou exécuter des scripts .sql.

L'exemple suivant exécute le script C: \ MyScript.sql à partir de la ligne de commande et génère les requêtes et les résultats dans un fichier texte situé dans C: \ MyResults.txt.

C:\Windows>sqlcmd -S NOTTINTRA3\SQL2005 -i C:\MyScript.sql -o c:\MyResults.txt -e

entrez la description de l'image ici

p.campbell
la source
7

Il n'y a rien de mal à ouvrir Management Studio, à cliquer sur «Nouvelle requête» et à taper simplement les commandes T-SQL. Vous pouvez le rendre plus compliqué que nécessaire.

HardCode
la source
@HardCode J'ai eu le sentiment que c'était le cas. Je viens d'utiliser Linux depuis si longtemps que je vais devenir fou ici. Cela ne me dérange pas de la SEP et de tout (en fait, j'ai évolué plus à mi-chemin depuis l'obtention du diplôme) mais je trouve certains de leurs outils, enfin, incomplets. L'explorateur de solutions n'est pas vraiment une option dans mon livre, mais oui, tout le reste (vim et ligne de commande) est à peu près facultatif, ce qui rend les éléments difficiles pour moi. Mais au final, c'est plus une question de curiosité qu'autre chose. Merci!
6

Si vous avez vraiment envie de vim, pensez à utiliser sqlcmd et à le paramétrer SQLCMDEDITOR=vimdans votre environnement. Bien sûr, vous devez installer vim .

Pour les directions complètes, regardez ici

Justin Dearing
la source
2

SQL Server est livré avec un certain nombre d'utilitaires de ligne de commande. SQLCMDest celui qui vous permet d'exécuter des commandes T-SQL directement sur une base de données. La page MSDN sur les utilitaires est ici , avec des liens de démarrage vers chacun.

Concernant votre postscript, vous auriez toujours besoin d'un client de base de données en ligne de commande d'une certaine sorte, basé sur Linux, dans ce cas. Je n'ai aucune idée si une telle chose existe. La mise en place d'une plate-forme complètement différente juste pour gérer une base de données avec un paradigme d'interface utilisateur différent (en supposant que c'est ce que vous proposez) semble cependant ... exagérée. :)


la source
2

L'explorateur de solutions est nul, simple et clair. Et je considère les gars qui se trompent la plupart de ces conneries de bons amis. Créez simplement un dossier (il en a un joli qu'il utilise par défaut) et enregistrez simplement vos fichiers dedans.

mrdenny
la source