我想使用SQL代理下的SQLCMD从SQL Server数据库中每周运行一次提取。因为我需要在同一共享中保存多个提取,所以我想使用当前日期作为提取的文件名的一部分。从命令行执行此操作时,我使用:
sqlcmd -S POC -i "\\org-data\data\dept\share\registry\SQLCMD\extractdata.sql" -s "|" -W -h-1 -o "\\org-data\data\dept\share\registry\Extracts\extractdata.%date:~-4,4%%date:~-10,2%%date:~-7,2%.txt"
而且它工作得很完美。
当我将相同的语句放入SQL Agent下的CmdExec中时,我的日期变成了一个语法错误-- (“文件名、目录名或卷标语法不正确”)
其他人是如何处理这个问题的?谢谢。
发布于 2019-04-17 01:07:57
这对我不起作用
echo off
sqlcmd -m 1 -S 10.108.96.210\QA832 -U Exception -P Password1 -i E:\KCM_UAT\Exception.sql -o C:\Test_$(ESCAPE_DQUOTE(DATE)).txt -W -h-1 -s " "
set /p delExit=Press the ENTER key to exit...:
文件是这样写出来的
Test_$(ESCAPE_DQUOTE(DATE)).txt
https://stackoverflow.com/questions/28910647
复制相似问题