Uso da linha de comando do SQL Server? É possível?

11

Eu tenho tentado usar o "Solution Explorer" do SQL Server Management Studio 2008 para gerenciar um projeto e, após duas semanas de luta com ele, decidi que realmente não ligo para ele. É "conveniência" características são realmente um obstáculo.

Infelizmente, o local em que trabalho é uma loja da MS e está bastante atrapalhado. Eu quero voltar para a linha de comando (eu desejo o Vim!). Eu instalei um repositório local do subversion com um front end TortiseSVN, para substituir o "Solution Explorer" acima mencionado e fazê-lo funcionar muito bem. Também instalei o Vim e, enquanto ainda estou trabalhando para personalizá-lo, faça-o cantarolar.

No entanto, a única coisa que ainda estou para encontrar uma solução é como executar comandos no SQL Server pela linha de comando. Estou acostumado com o prompt de linha de comando do MySQL / Postgres, já que é isso que eu usei no passado e estava usando durante minhas aulas. No entanto, não consigo encontrar uma maneira de executar meus scripts via linha de comando no Windows. Atualmente, eu os edito no Vim, atualizo a página no SSMS e execute. Eu preferiria nem tocar no SMSS, a menos que necessário.

Eu já vi posts sugerindo o sqlsharp, mas quando fui para a página, sinto que não é exatamente o que estou procurando.

--editar

Eu realmente gostaria que fosse possível ter 2 marcas de resposta. P. Campbell tem a resposta técnica correta e já tentei algumas vezes (continuo recebendo um erro ao tentar o sqlcmd ... Ao pesquisar que é como os pipes nomeados estão operando ... Mesmo que eu o tenha configurado e ativado, parece não funcionar.)

Depois de tentar isso e sem sucesso, tentei copiar e colar no método Management studio, mas isso era ridículo ... Então decidi que talvez o HardCode também esteja correto.

Antiparadigm
fonte

Respostas:

15

Você já considerou o SQLCMD?

Aqui está um artigo sobre o uso do utilitário de linha de comando SQLCMD .

Você pode executar instruções SQL adhoc ou executar scripts .sql.

O exemplo a seguir executa o script C: \ MyScript.sql na linha de comando e gera as consultas e os resultados em um arquivo de texto localizado em C: \ MyResults.txt.

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

insira a descrição da imagem aqui

p.campbell
fonte
7

Não há nada errado em abrir o Management Studio, clicar em 'Nova consulta' e digitar apenas os comandos T-SQL. Você pode estar tornando isso mais complicado do que o necessário.

Código difícil
fonte
@ HardCode Tive a sensação de que era o caso. Acabei de usar o Linux por tanto tempo que estou ficando louco aqui. Eu não me importo com MS e tudo (de fato, mudei para o meio termo desde a graduação), mas acho que algumas de suas ferramentas estão incompletas. O gerenciador de soluções não é muito uma opção no meu livro, mas sim, todo o resto (vim e linha de comando) é praticamente opcional, dificultando os itens para mim. Mas, no final, é mais uma curiosidade do que qualquer outra coisa. Obrigado!
6

Se você realmente deseja o vim, considere usar o sqlcmd e a configuração SQLCMDEDITOR=vimem seu ambiente. Claro que você precisa instalar o vim .

Para instruções completas, veja aqui

Justin Dearing
fonte
2

O SQL Server é fornecido com vários utilitários de linha de comando. SQLCMDé aquele que permite executar comandos T-SQL diretamente em um banco de dados. A página MSDN nos utilitários está aqui , com links para cada um deles.

Em relação ao seu postscript, você ainda precisaria de algum tipo de cliente de banco de dados de linha de comando, baseado em Linux, neste caso. Não tenho ideia se existe algo assim. Configurar uma plataforma completamente diferente apenas para gerenciar um banco de dados com um paradigma de interface do usuário diferente (assumindo que é isso que você está sugerindo) parece ... um exagero. :)


fonte
2

O Solution Explorer é uma porcaria, simples e simples. E considero os caras que erraram a maior parte dessa porcaria bons amigos. Basta criar uma pasta (que tenha uma boa que use por padrão) e salve suas coisas lá.

mrdenny
fonte