我有一个正常的SQL查询:
SELECT * FROM fmain
我希望将此查询的结果定期保存到文本文件中。
也就是说我希望查询自行运行,然后每天早上8点(左右)填充文本文件。
我正在运行SQL Server Management Studio 2012
,并且是新手SQL用户,所以请尝试以尽可能多的解释方式回答。
请帮我解决这个问题。
干杯, 尼尔斯
答案 0 :(得分:2)
您可以使用Sql脚本,批处理和计划任务来执行此操作。
首先,使用sql语句在首选目录中创建Sql脚本,例如 C:\ TEMP \ MySelect.sql 。
EXEC xp_cmdshell 'SQLCMD -S . -d YOUR_DATABASE_NAME -Q "EXEC SELECT * FROM fmain" -s "," -o "C:\TEMP\MY_FILE.txt" -h-1 -W -s"|"';
然后创建批处理文件,例如 C:\ TEMP \ call_sql.bat
@ECHO OFF
echo "Start"
sqlcmd -i C:\TEMP\MySelect.sql
然后将任务计划程序配置为每天早上8点运行。 您可以通过程序界面或使用脚本来执行此操作:
schtasks /create /sc DAILY /ST 08:00 /tn "EXPORT fMain every DAY Script" /tr "C:\TEMP\call_sql.bat"
我希望这可以帮到你