我有一个触发器对不同的表执行 INSERT_AFTER。目标表是要发送到另一家公司的数据的临时表。在我们这边的数据库中,日期是smalldatetime。另一个公司需要这种拆分为日期字段和时间字段。也没有进入临时表。我尝试了几种不同的方法,包括 CAST 和 CONVERT 都没有成功。
相关的SQL如下:
CAST(inserted.CallInDate AS DATE) AS ClientCallinDate,
CAST(inserted.CallInDate AS TIME) AS ClientCallinTime,
--CONVERT(DATE,inserted.CallInDate) AS ClientCallinDate,
--CONVERT(TIME,inserted.CallInDate) AS ClientCallinTime,
此触发器跟随另一个 INSERT_AFTER 触发器对其他表执行相同的操作。第一个触发器作为“第一个”触发,有问题的触发器作为最后一个触发。
`EXEC sp_settriggerorder @triggername=N'[dbo].[TR_FirstTable_to_Client_I]', @order=N'First', @stmttype=N'INSERT'`
第二个触发器还有另一个字段失败,它是由第一个触发器创建的,作为从另一家公司收到的确认。我不认为这些是相关的,但鉴于我也没有弄清楚,我不能确定。
`EXEC sp_settriggerorder @triggername=N'[dbo].[TR_FirstTable_to_Client_II]', @order=N'Last', @stmttype=N'INSERT'`
我需要知道什么可能会失败或我需要更改 SQL 中的什么。我已经放下触发器并重新创建它,但这没有任何帮助,实际上给了我一个我尚未解决的错误。