Podemos ver os valores (linhas e células) em uma variável com valor de tabela no SQL Server Management Studio (SSMS) durante o tempo de depuração? Se sim, como?
sql
debugging
ssms
table-variable
Faiz
fonte
fonte
Insira a instrução acima no ponto em que deseja exibir o conteúdo da tabela. O conteúdo da tabela será renderizado como XML na janela locals ou você poderá adicionar
@v
à janela de observação.fonte
DECLARE @v nvarchar(max) = (SELECT * FROM <tablename> FOR JSON AUTO)
Este projeto https://github.com/FilipDeVos/sp_select possui um procedimento armazenado
sp_select
que permite selecionar em uma tabela temporária.Uso:
Ao depurar um procedimento armazenado, você pode abrir uma nova guia e executar este comando para ver o conteúdo da tabela temporária.
fonte
No procedimento armazenado, crie uma tabela temporária global ## tentable e escreva uma consulta de inserção dentro do procedimento armazenado, que insere os dados na sua tabela nessa tabela temporária.
Feito isso, você pode verificar o conteúdo da tabela temporária abrindo uma nova janela de consulta. Basta usar "selecione * de ## tentável"
fonte
Basta usar a consulta de seleção para exibir a variável da tabela, sempre que você desejar verificar.
http://www.simple-talk.com/sql/learn-sql-server/management-studio-improvements-in-sql-server-2008/
fonte
Se você estiver usando o SQL Server 2016 ou mais recente, também poderá selecioná-lo como resultado JSON e exibi-lo no JSON Visualizer, é muito mais fácil lê-lo do que em XML e permite filtrar resultados.
fonte
Cheguei à conclusão de que isso não é possível sem nenhum plug-in.
fonte
O SQL Server Profiler 2014 lista o conteúdo do parâmetro de valor da tabela. Também pode funcionar em versões anteriores. Ative o evento SP: Starting ou RPC: Completed no grupo Stored Procedures e na coluna TextData e, ao clicar na entrada do log, você terá as instruções de inserção para a variável da tabela. Você pode copiar o texto e executar no Management Studio.
Saída de amostra:
fonte
Por que não selecionar a tabela e visualizar a variável dessa maneira?
fonte
SELECT * FROM @Table
ao script que está sendo depurado não emite resultados para a janela de resultados.Desculpe pessoal, estou um pouco atrasado para a festa, mas para quem se deparar com essa pergunta posteriormente, achei a maneira mais fácil de fazer isso em um procedimento armazenado:
A resposta de messi19 deve ser o IMHO aceito, já que é mais simples que o meu e faz o trabalho a maior parte do tempo, mas se você é como eu e tem uma variável de tabela dentro de um loop que deseja inspecionar, isso faz o trabalho bem sem muito esforço ou plugins SSMS externos.
fonte