通过MS向ORACLE插入数据提示报错!希望带佬指点

				INSERT OPENQUERY ( ECD_MS2MIS, 'SELECT * FROM "SHJM"."ODS_POR061_ESTIMATE_COAL_D_TJG"' ) 

				SELECT
					REPLACE( [FutureStockID], '-', '' ) [ID],
					'D' [RPT_PD_T],
					LEFT ( CONVERT ( VARCHAR ( 128 ), GETDATE( ), 112 ), 8 ) [PRT_PD],
					NULL [STAGE_NO],
					CONVERT ( VARCHAR ( 19 ), [ForecastTime], 21 ) [ESTIMATE_DATE],
					CFS.[CoalName] [COAL_TYPE],
					[ForecastExportTunnage] [ESTIMATE_OUT_VALUE],
					[ForecastImportTunnage] [ESTIMATE_IN_VALUE],
					[ForecastStock] [ESTIMATE_STOCK],
					'10000002' [ORG_C],
					[PortName] [ORG_N],
					'PRO' [BUZ_T_C],
					'港口' [BUZ_T_N],
					'集团港口数据应用系统' [DATA_SOURCE],
					LEFT ( CONVERT ( VARCHAR ( 128 ), GETDATE( ), 112 ), 8 ) [DATA_BATCH_NO],
					CONVERT ( VARCHAR ( 19 ), [UpdateTime], 21 ) [DATA_TIME],
					NULL [YL1],
					INFO.[CoalID] [COAl_CODE] 
				FROM
					cornerstone_future_stock CFS
					INNER JOIN [dbo].[baseinfo_coal] INFO ON CFS.[CoalName] = INFO.[CoalName] AND CFS.[FutureStockID] = 'CDC2BDF6-A0F9-4E0D-97E3-B4F23925675F'

> Msg 7353, Level 16, State 1, Server WIN-20162, Procedure , Line 0
链接服务器 "ECD_MS2MIS" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 提供了不一致的元数据。在执行过程中提供了多余的一列,但在编译时并未发现该列。
> [42000] [Microsoft][SQL Server Native Client 10.0][SQL Server]链接服务器 "ECD_MS2MIS" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 提供了不一致的元数据。在执行过程中提供了多余的一列,但在编译时并未发现该列。 (7353)

偶尔执行能成功,但是绝大部分时间都会提示报错!

执行后的报错信息如下

> Msg 7353, Level 16, State 1, Server WIN-20162, Procedure , Line 0
链接服务器 "ECD_MS2MIS" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 提供了不一致的元数据。在执行过程中提供了多余的一列,但在编译时并未发现该列。
> [42000] [Microsoft][SQL Server Native Client 10.0][SQL Server]链接服务器 "ECD_MS2MIS" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 提供了不一致的元数据。在执行过程中提供了多余的一列,但在编译时并未发现该列。 (7353)

这个问题解决了吗楼主