在 sp_send_dbmail 之前检测文件大小

Detecting file size before sp_send_dbmail

我们使用以下附件,附件大小限制为 10MB。

EXEC msdb..sp_send_dbmail
    @recipients         = 'me@me.co.uk',  
    @subject            = 'foo bar',
    @file_attachments   = 'C:\xxx\yyy\myFile.xlsx,
    @body_format        = 'html',
    @body               = 'norf';

是否可以在 SQL 服务器脚本中检查 运行 此脚本之前 myFile.xlsx 的大小?

我有一个使用批处理文件的解决方案:

[C:\FileSize.cmd]

@echo %~z1

现在您可以使用该文件获得 <your_file> 的大小:

DECLARE @t table(filesize int)

INSERT INTO @t
EXEC [xp_cmdshell] @command_string = 'C:\filesize.cmd <your_file>'

SELECT TOP(1) * FROM @t