SQL Server 2008错误 - '%'附近的语法不正确。 [SQLSTATE 42000](错误102)。步骤失败了

时间:2015-07-06 13:15:30

标签: sql-server

我的SQL查询在用于通过电子邮件发送查询结果的SQL作业中使用时出现上述错误而失败。运行普通查询时语法很好。

我看到其他人在服务器名称中使用非标准字符时遇到此问题,但我的问题是我的查询中的%符号,其他解决方案对我不起作用:

EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'SQL-Server',
@recipients = 'XXXXX',
@subject = 'Missing Essence File Check',
@query = N'SELECT *   FROM ([omnibus].[dbo].[OmniBus_CLP_Clips] CLP 
inner join [omnibus].[dbo].[OmniBus_CLD_ClipDetails] CLD on CLP.FLE_ID = CLD.FLE_ID) 
inner join [omnibus].[dbo].[OmniBus_FLE_Files] fle on clp.FLE_ID = fle.fle_id
where CLD_user_data  like '%.mov%'
and CLD_user_data  not like '%.m2v%'
and CLD_user_data  not like '%.wav%'
and fle.FLE_file_deleted = 0;',
@attach_query_result_as_file = 1,
@query_attachment_filename = 'Missing Essence File Check.txt'

有人可以建议如何克服这个错误吗?

谢谢,

罗布

1 个答案:

答案 0 :(得分:0)

您可以更改此行。

$vc_sub = VerticalchainsubelementQuery::create()->findByName("Holding");
$vc = VerticalcainCompanyQuery::create()->filterBySubVerticalChainElement($vc_sub)->find();
$comp = CompanyQuery::create()->filterByVerticalcainCompany($vc)->find();