场景描述:C#接口程序,sqlserver脚本链接oracle数据库,单独(我用的DBEVER工具)执行sqlsever脚本不报错,运行程序的时候就会以下报错。
脚本:
SELECT TOP 10 * FROM [REPORT].[dbo].[YBPT_VIEW_4101A_1]
WHERE CONVERT(DATE,CREATE_TIME,120)>='2021-11-30'
AND CONVERT(DATE,CREATE_TIME,120)<='2021-12-07'
AND mdtrt_sn
NOT IN (SELECT ITEM_KEY FROM REPORT.DBO.YLPT_SEND_LOGS WHERE ITEM_TYPE='4101A')
附图:
原因:脚本中mdtrt_sn 与 ITEM_KEY的类型不一致导致的,mdtrt_sn在表中是varchar类型,ITEM_KEY在表中是decimal类型,是由于类型不一致的原因,将mdtrt_sn与ITEM_KEY的类型改为一致就可以解决了。