WINCC与Sqlserver数据交换

WINCC与Sqlserver数据交换,第1张

 首先是把要过来的oracle备份的dmp文件处理好,要来EXP导出时候的用户名和密码,以及LOG日志文件。

其次安装oracle数据环境,和我的SQL数据库在一个机器上,呵呵,这样好办多了。数据库是ORACLE9i版本的,而现在找到的是ORACLE10G,经过询问得知,完全可以兼容。开始安装ORACLE10g了。要记住每一个数据的记录。首先orc默认的全局数据库密码要记住,我设置的是orcl,并且记住其他几个帐号都是这个密码了。然后安装结束。把安装以后的文件复制出来放好。在里面会找到,数据管理的“:5500/em”端口的网址。记住这个有用啊。下面开始熟悉ORACLE的方方面面了,接着开始到数据库了。

第三、先建立一个用户名,名称最好和提供DMP备份的名称一样,密码也一样。这样会省很多事的。开始WINDOWS下运行CMD:

C:>imp username/userpassword@orcl file=d:/userdmp ignore=y rows=y full=y

开始执行导入 *** 作。时间很长,那么USERDMP数据库就被恢复过来了。

现在我们我们已经把ORACLE的备份数据恢复过来了。ORACLE里面有我们需要的数据了,我们如何把这些数据导入到SQL server里呢。这时候就要用到SQL转移工具DTS了………

打开企业管理器,在要导入的数据库出按下右键,所有任务里选择导入数据选择数据,进入数据转换导入导出向导。下一步我们选择数据源为Microsoft OLE Provider for oracle 选择属性因为是本机所以服务器名称不比输入了,用户名我们输入ORACLE我们需要的数据库的用户名和密码。测试一下连接,正常连接以后选择确定,就可以选择(勾选)我们需要的这个数据库里的表了。这样,oracle中的表就导入到SQL里面了。我们就可以用SQL来 *** 作数据了。

WINCC

作为一个工控软件,有着工控软件的一系列特征:能显示实时数据,历史数据,生

成实时数据曲线与历史数据曲线,

并能生成报表。

然而

WINCC

与其它的工控软件包有不同

的地方:

它的数据是保存在标准的及功能强大的

Sybase SQL Anywhere

数据库中

,

所以,

我们

可以像访问一般的数据库一样,通过

ODBC

直接访问

WINCC

的历史数据库。

一、

通过

Sybase Central 40

访问显示数据

Wincc

在安装时就把

Sysbase

数据引擎与

Sybase

Central

40

一同安装到系统中,你可以在

Program

Files\Sybase\Shared\

中找到

Sybase

Central

40

,你可在在其目录下

\java\

中发

scjviewexe

,该程序功能相当于

SQL

server

的企业管理器。你可以通过其查看你在

WinCC

中的归档数据。

使用方法:

1)

运行

WINCC

,这时

WINCC

会在

ODBC

中添加两条数据源:

CC_FY_02-10-16_10:40:18

CC_FY_02-10-16_10:40:18R

其中

CC_FY_02-10-16_10:40:18R

是可以通过

Sybase

Central

40

及别的一些工具不用

用户名与密码读取的。这就是我们

WinCC

的历史数据库。

注意:这两条

ODBC

名不是一成不变的,它是结构如下

CC_FY_02-10-16_10:40:18R

CC

固有的,指明是

WinCC

生成的

ODBC

FY

项目名,这是我这个

WinCC

项目名称

02-10-16

:最后一次修改的日期。

10:40:18

:最后一次修改的时间。

R

表示是运行库。

2

、运行

scjviewexe

,点击

Adaptive

Server

AnyWhere

7

按右键,选择

Connect

。将会d出

Connect

配置界面。

Identification

的页面,选中

ODBC SOURCE NAME

BROWSE

则会列出所有对

Sybase

数据引擎的

ODBC

名,选择

CC_FY_02-10-16_10:40:18R

,点击“

OK

“、

OK

“即可。

这时在

Adaptive Server AnyWhere 7

下面会出现你的计算机名,并已连通了你的

WINCC

史数据库。

好了,我们现在可以查看

WinCC

的历史数据了。

展开:

Adaptive Server AnyWhere 7

DBA

展开:

TABLE

我们现在可以看到数据库的表名与表结构了:

表名:

PDE#HQZ#GAS_PRE

组成方式如下

PDE

:固有

HQZ

:归档名称

GAS_PRE:

变量名。

表结构:有三个字段:

T, V

, F

T

:时间

V

:值

F

:标志

由于没有可靠的资料可查,其

F

的名值表示的含义就不得而知,不过,在我的使用中,我

F

8392705

作为一个合法值,

WINCC

的处理中没有出过错,

但别的

FLAG

值的含义,

只能问西门子公司了。

二、

利用

VB

编写程序访问

WINCC

历史数据库。

上面已明确描述了

WINCC

的历史数据库的结构组成与表结构,

那么我们就可以通过编程访

WINCC

的历史数据库。如其它通过

ODBC

访问的数据一样。如下面的小例子

VB

中,先引用

ADO

组件。并声明

ADO

变量。

Private cn As ADODBConnection

Private rs As ADODBRecordset

Const dsn = “CC_FY_02

-10-

16_10:40:18R”

Private sub insertData(nowV

alue as double)

Dim nowtime as string

Nowtime =now

cnOpen dsn, "", ""

sqlstr=”

insert

into

PDE#HQZ#GAS_PRE(T,V

,F)

V

alues(„”+

Nowtime

+”‟,”+

nowV

alue

+”,

8392705) ”

cnExecute sqlstr

cnclose

End sub

本程序中的子程序只处理了数据插入,其它读出就更为简单,与其它的

ADO

访问是一模一

样的,这里就不多说了。

三、

结语

能通过

ODBC

访问

WINCC

的历史数据,给我们提供了更多了解决办法,特别是在企业信

息化平台上使用非实时数据方面,可以人为给

WINCC

添加正确的历史数据,使

WINCC

功能更为强大。

由于

ODBC

名与项目的修改时间有关,所以在项目频繁变化时,请不要使用这个功能。

WinCC

在启动时自动添加

ODBC

名,在关闭时自动删除,所以,在

WINCC

关闭后,不能

再通过

ODBC

访问

ODBC

如果下列文件:

"<Project_name>RTmdf",

"<Project_name>RTldf",

"<Project_name>mdf" ,

"<Project_name>ldf"

不在项目目录,或损坏,或不能访问时,WinCC V6x中将出现该出错消息。

可能原因是:

1、拷贝项目时出错。

不能拷贝重要文件,因为在拷贝时刻这些文件正在使用中。

应该使用项目复制器Project Duplicator拷贝项目。

2、SQL服务器的安全模式已更改。

已将SQL服务器的安全模式从“Mixed Mode”切换为“Windows Authentication Only”模式。

3、计算机名称已更改。

当安装完WinCC,并第一次调用SQL服务器之后,用户不应再次更改计算机名称。若仍要更改计算机名称,则必须重新安装SQL服务器。

4、在项目目录的路径名称中有非法字符(特殊字符)。

5、当前用户没有足够的授权。

当前WinCC项目版本已更改。

当前Windows用户不属于SIMATIC HMI组。

6、IP地址已更改

SIMATIC Shell中的IP地址不正确

以上就是关于WINCC与Sqlserver数据交换全部的内容,包括:WINCC与Sqlserver数据交换、如何利用ODBC访问WINCC的历史数据库、wincc项目打不开问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9663825.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存