No SQL Server Management Studio(a partir da versão 2008) está disponível o recurso SQLCMD Mode, que permite a execução de comandos de sistema windows na interface gráfica do SQL SERVER.
Podemos, por exemplo, salvar o resultado da execução de um script em arquivo texto.
Para isso, é necessário ativar o modo SQLCMD…
OBS.:Ao ativar esse recurso, o IntelliSense e o depurador Transact-SQL são desativados no editor de consultas.
Para gerar o LOG de execução, utilizei o comando:
:out <filename>|stderr|stdout
Em seguida executei o script conforme exibido abaixo:
:out C:\Logs_SQL\logAluno.txt Print 'Criando tabela...' Print '---------------------------' Create Table Aluno ( id_Aluno int Not Null, Nome_Aluno varchar(175) not Null, Matricula varchar(30) Not Null ) Print 'Inserindo registro...' Print '---------------------------' Insert into Aluno (id_Aluno, Nome_Aluno,Matricula) Values (1, 'Alexandre Oliveira Curvelo', '0001'); Print 'Alterando modelo...' Print '---------------------------' Alter Table Aluno Add dt_Cadastro datetime; Print 'Atualizando registro...' Print '---------------------------' Update Aluno Set dt_Cadastro = getdate(); Select 'ALuno: ' + Nome_Aluno + ' inserido com sucesso!' From Aluno Where id_Aluno = 1
Após a execução, o log será gravado na pasta Logs_SQL, conforme parametrizado no comando acima.
O editor do SQL permite execução dos seguintes comandos:
[!!:]GO[count] !!<command> :exit(statement) :Quit :r <filename> :setvar <var> <value> :connect server[\instance] [-l login_timeout] [-U user [-P password]] :on error [ignore|exit] :error <filename>|stderr|stdout :out <filename>|stderr|stdout