(本人低手低手低低手,观点幼稚之处敬请海涵)
先前在网上找了个帖子,介绍了5.0版本读取数据库的问题。
原来只有在wincc启动的时候相应的数据库才会添加进sql,而且随着项目修改,数据库名是变动的,这个常识性的东西我附在帖子的后面。5.0版本中的数据库读取问题算是解决了,但目前我用的是6.0版,发现了一个新问题,Tag Logging的数据库文件是分段的一个个的mdf及ldf文件,似乎并没有在wincc启动的时候attach进sql server,倒是找到一个名为AMT的表,里面的数据记录了针对不同时段的mdf文件地址,我猜想这可能是个动态过程,只有在WinCC Online Trend Control在查询以往数据的时候才会临时调用,先在AMT中查询对应的mdf文件所在地址,然后再临时attach到sql,这样对我们通过sql数据库读取历史数据造成了很大麻烦。
我手工将一个分段mdf文件attach进sql数据库,发现其中的压缩数据是二进制的,也不知道怎么使用。
附:
******
1) 运行WINCC,这时WINCC会在ODBC中添加两条数据源:
CC_FY_02-10-16_10:40:18
CC_FY_02-10-16_10:40:18R
注意:这两条ODBC名不是一成不变的,它是结构如下
CC_FY_02-10-16_10:40:18R
CC: 固有的,指明是WinCC生成的ODBC。
FY : 项目名,这是我这个WinCC项目名称
02-10-16:最后一次修改的日期。
10:40:18:最后一次修改的时间。
R: 表示是运行库。
2)
表名:PDE#HQZ#GAS_PRE 组成方式如下
PDE:固有
HQZ:归档名称
GAS_PRE:变量名。
表结构:有三个字段:T, V, F
T:时间
V:值
F:标志