为了将日期添加到 CSV 名称,我已经苦苦挣扎了几个小时:为简洁起见,我在这里只取日期的第一个字符。
在 SQL 命令中,这有效:
sqlcmd -S localhost -d master -E -W -w 999 -s "," -Q "SELECT D.* FROM sys.databases D" -o "C:\sqlcmd%date:~1,1%.csv"
但是当我尝试在作业的步骤中使用完全相同的代码时,文件名是
sqlcmd_%date
我不能运行 xp_commandShell,有没有办法让动态日期在 SQLCmd 中工作?我已经阅读了很多文章,例如。
尝试使用代理令牌,例如
这对我有用。提醒一下,bcp 是更适合这种提取的工具;您不会遇到此处未处理的标题和“受影响的行”问题。