使用SQLCMD
,我正在运行一个脚本输出到STDOUT
然后gziping输出。当我查看输出文件时,我看到此警告消息:
Database name 'tempdb' ignored, referencing object in tempdb.
在我的脚本中,我在脚本开头检查是否删除临时表(如果存在):
IF OBJECT_ID('tempdb..#TheTable') IS NOT NULL
BEGIN
DROP TABLE tempdb..#TheTable
END
但是 - 我还有SET NOCOUNT ON
,但文件仍然会捕获警告消息。
SQLCMD脚本:
sqlcmd -i TheScript.sql -h-1 -k1 -s"," -W -u | gzip > "C:\TheOutput.gz"
有没有办法压制这样的消息?
答案 0 :(得分:2)
将您的if条件更改为以下模式:
IF 0 < OBJECT_ID('tempdb..#TheTable')
DROP TABLE #TheTable
这不应该导致任何错误消息。
答案 1 :(得分:0)
适用于SQL Server 2016及更高版本的简单干净版本,没有任何消息:
drop table if exists #TheTable