Estou usando o SSMS 2012 para conversar com os servidores SQL Server 2012 e Azure SQL que usamos. Eu admito que não sou especialista em SQL, por isso tenho guardado a maioria dos meus scripts SQL para referência futura. Eu rapidamente encontrei 20 scripts .SQL no projeto SSMS e todos eles estão vivendo na mesma pasta 'Consultas'.
Existe uma maneira de criar "subpastas" no projeto para organizar meus scripts corretamente? Como a maioria das pessoas mantém seus scripts organizados? Tenho certeza de que se isso incomoda um iniciante como eu, deve ser um problema real para o administrador real (com potencialmente centenas de scripts?)
sql-server-2012
ssms
DeepSpace101
fonte
fonte
.sql
arquivo gigante . Dessa forma, você só precisa acompanhar um único arquivo.Respostas:
Por fim, as subpastas foram possíveis no SSMS 2016.
Usuários cautelosos: você pode instalar o SSMS 2016 e continuar usando o antigo. Veja a nota
[1]
abaixo.Uma vez lá, comece a usar soluções em vez de projetos .
A subpasta funciona assim:
Adicionando subpasta solução:
Adicionando script SQL:
Seus bons projetos antigos (maus projetos antigos)
[1]
Em relação à atualização:O SQL Server 2008 - 2016 é oficialmente suportado pelo SSMS 2016. Veja mais informações na página de download. Para versões mais antigas, você pode manter seu SSMS antigo favorito, consulte o ponto 2 abaixo.
Diferentes versões do SSMS vivem bem juntas , ou seja, você pode ter o SSMS 2008 e o SSMS 2016 instalados juntos sem problemas - testados.
fonte
No SSMS, se você ainda não estiver exibindo o snap-in Navegador de modelos, vá para Menu, Exibir, Explorador de modelos (tecla de atalho Ctrl- Alt- T).
Os modelos são carregados da sua máquina local, desta pasta
Você pode adicionar subpastas como quiser e até aninhar (via Windows Explorer ou SSMS). Se não me engano, as pastas são carregadas apenas uma vez por inicialização do SSMS, portanto, talvez seja necessário reiniciar o SSMS para captar as alterações de pasta no sistema de arquivos.
p / s - Esse método redireciona novamente o navegador de modelos para organizar os scripts do projeto!
fonte
Infelizmente, os projetos SSMS não suportam subpastas. Se você está falando sobre a pasta padrão na qual o SQL salva coisas, sim, você pode criar subpastas lá. Essa é apenas uma pasta no seu disco rígido. Essa pasta está localizada em "C: \ Usuários {nome de usuário} \ Documents \ SQL Server Management Studio \ Projects" por padrão.
fonte
A falta de subpastas é certamente frustrante. Vou tentar organizar minhas coisas em projetos separados na mesma solução. Cada um tem uma pasta Consultas ... Vou nomear os projetos da maneira como nomearia as subpastas (se eu pudesse criá-las!).
fonte
Adição à resposta 3, acima, resolvendo a situação redirecionando modelos em C: \ Arquivos de programas (x86) \ Microsoft SQL Server \ 110 \ Tools \ Binn \ ManagementStudio \ SqlWorkbenchProjectItems \ Sql.
Você precisará adicionar permissões às contas de usuário das máquinas para o Controle total. (Clique com o botão direito do mouse na pasta de destino, Propriedades, selecione os usuários da máquina, Editar, etc.)
Mesmo assim, é como Steve Balmer encabeçou esta solução no passe. Você pode salvar um arquivo lá, mas quando é aberto no SSMS, não é aberto com o nome do arquivo .sql, é um nome genérico. Portanto, existe todo esse rigmarole apenas para manter suas consultas, funções, scripts de tabela, sprocs, etc. todos organizados.
Ótima resposta, mas no Windows 8.1, foi impedido.
A melhor resposta que tenho é salvar via SSMS no sistema de arquivos que acredito respeitar o aninhamento de arquivos .sql. Eu tenho que criar um projeto de banco de dados no Visual Studio 2013, no qual eu possa configurar pastas conforme elas fizerem sentido para o fluxo do meu produto.
Mas não consigo abrir essas consultas pelo Server Explorer no Visual Studio ... no entanto, é possível organizar as consultas em um único local se elas estiverem no trabalho, scripts SPROC, scripts UDF etc.
Não existe um IDE para fazer esse tipo de trabalho de projeto e, sim, nas palavras de outro entrevistado aqui, isso é triste.
Divagando e divagando aqui um pouco ... em outras palavras, posso obter a estrutura de pastas que eu quero com um projeto de banco de dados no VS 2013, mas se eu quiser fazer logon em um servidor remoto para testá-los, tenho que acessá-los arquivo por arquivo. SSMS. Dor no lado de trás ... Eu quero um IDE que faça isso.
fonte
Fiz progressos editando manualmente o arquivo do projeto SSMS para adicionar pastas embaixo da solução. Abra o arquivo .ssmssqlproj em um editor de texto. Procure os nós chamados LogicalFolder. O nó Diversos é um bom modelo para o que você precisa fazer.
Apenas copie essas linhas e mude o nome para a pasta que deseja ver. Altere também o valor do tipo para algo único. Aqui está o que eu fiz.
Certifique-se de manter uma cópia do arquivo do projeto (.ssmssqlproj). Se você estragar a edição, como fiz algumas vezes, o projeto não será aberto. Isso não será tão ruim se você instalou o suplemento TFS e está verificando seus arquivos de projeto - você pode simplesmente descartar as alterações. Se não, certifique-se de fazer uma cópia.
Em seguida, crio pastas na solução para corresponder aos nomes das pastas lógicas. Depois disso, criei um script de definição de tabela e um script de definição de tipo de tabela definido pelo usuário e os salvei em suas respectivas pastas. Eles apareceram na pasta "Diversos" no gerenciador de soluções, então eu os arrastei para as pastas apropriadas.
Isto é onde as coisas quebraram. Porque, eu acho, todos os procedimentos, funções, tabela e tipo armazenados estão em arquivos que possuem uma extensão .sql. Como os arquivos são .sql, eles foram colocados na pasta Consultas no Solution Explorer. No entanto, eles ainda estão fisicamente nas pastas certas no disco. Então esse é um passo na direção certa.
Quero ver se o atributo "Tipo" no arquivo do projeto corresponde a uma extensão de arquivo específica e se consigo descobrir quais são. Se eu conseguir as extensões corretas, o SSMS colocará os arquivos na pasta correta do projeto.
Posso ver o Visual Studio para ver como isso funciona, já que o SSMS é baseado no Visual Studio, de acordo com a tela inicial.
No entanto, estou no meio do caminho, então talvez um de vocês possa descobrir o resto!
fonte