我们通过 Workbench/J 在我们的批次中将 S3 上传的文件复制到 Redshift,如下所示;
java -jar %WBJ_DIR%\sqlworkbench.jar -profile='%WBJ_PROF%' -script='%ScriptFile%' -displayResult=true
- Script File 是根据目标表和条件预先创建的复制命令(用作文件名,'yyyy-mm-dd_TABLE_NAME.gz')。
到目前为止,上传任务已成功进行,但我们想添加任何错误捕获以确认 Redshift 上的上传结果。
只是想知道 SQL Server 中是否有像“SET NoCount ON”这样的选项。如果只获取记录数,没有标题也没有消息,我想我们可以像这样从我们批次的 STL_LOAD_ERRORS 获取上传错误数;
--Check SQL
set COMMAND=select count(*) from STL_LOAD_ERRORS where filename='%COPY_FILE%' and starttime > '%bat_start_time%';
-- Get Error Count
for /F "delims=" %%A in ('%COMMAND%') do (
set REC_CNT=%%A
)
echo Upload Error Count : %REC_CNT%
当然,任何其他在 Redshift 上确认上传结果的好方法都将不胜感激。
非常感谢您提前提供有用的建议。