Estou lutando há horas para adicionar uma data a um nome CSV: Para ser breve, estou apenas pegando o primeiro caractere da data aqui.
No comando SQL, isso funciona:
sqlcmd -S localhost -d master -E -W -w 999 -s "," -Q "SELECT D.* FROM sys.databases D" -o "C:\sqlcmd%date:~1,1%.csv"
Mas quando tento usar exatamente o mesmo código dentro da etapa de um trabalho, o nome do arquivo é
sqlcmd_%date
Não consigo executar o xp_commandShell, existe uma maneira de obter a data dinâmica funcionando no SQLCmd, por favor? Eu li tantos artigos, por exemplo .
Tente Tokens de agente em vez disso, por exemplo
Isso funcionou para mim. Apenas um lembrete, o bcp é uma ferramenta mais apropriada para esse tipo de extração; você não terá problemas de cabeçalho e "linha(s) afetada(s)" com os quais não está lidando aqui.