繁体   English   中英

在 SQL 表和 Wonderware Historian 之间插入数据

[英]Inserting data between SQL table and Wonderware Historian

我正在尝试从 Wonderware Historian 获取值,以便在报表生成器中读取。 我通过 Historian 客户端查询获得了下面的 SQL 代码,但此代码直接从 SQL 视图执行 select。

SET NOCOUNT ON
DECLARE @StartDate DateTime
DECLARE @EndDate DateTime
SET @StartDate = DateAdd(mi,-5,GetDate())
SET @EndDate = GetDate()
SET NOCOUNT OFF
SELECT StateSummaryHistory.TagName, StartDateTime, EndDateTime, Value, vValue
 FROM StateSummaryHistory
 WHERE StateSummaryHistory.TagName IN ('VTIS01_FT04', 'VTIS01_TT344')
 AND wwVersion = 'Latest'
 AND wwRetrievalMode = 'Cyclic'
 AND wwCycleCount = 1
 AND StartDateTime >= @StartDate
 AND EndDateTime <= @EndDate

我需要在已经创建的表中插入数据,以便我可以为 Report Builder 执行 select,下面是我试图在表中插入的代码:

 INSERT INTO x_TagsDescr
 SELECT StateSummaryHistory.TagName, StartDateTime, EndDateTime, Value, vValue
 FROM StateSummaryHistory
 WHERE StateSummaryHistory.TagName IN ('VTIS01_FT04', 'VTIS01_TT344')

返回以下错误:

列名或提供的值的数量与表定义不匹配。

x_TagsDescr 是我要插入的表。

有人可以帮我吗?

插入时提及列名以避免此错误是一个好习惯:

 INSERT INTO x_TagsDescr (<list of column names that match columns in your select>)
 SELECT StateSummaryHistory.TagName, StartDateTime, EndDateTime, Value, vValue
 FROM StateSummaryHistory
 WHERE StateSummaryHistory.TagName IN ('VTIS01_FT04', 'VTIS01_TT344')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM