ACCESS 和 ODBC 问题

哪个能告诉我 下面 的 1和2  具体怎么操作
   

 直接使用Wincc里的脚本功能,向Access数据库里直接写变量值。
   1,建立Access数据库,比如Wincc_DATA,建立数据表:Wincc_Table,表中有一个字段比如“Tag”
   2.建立ODBC数据源,名称可定义为Sample,连接指向“Wincc_DATA"
   3.在Wincc里编写一个脚本如下:
   dim objconnection
   dim strconnectionstring
   dim lngvalue
   dim strsql
   dim objcommand
   strconnectionstring="Provider=MSDASQL;DSN=Sample;UID=;PWD=;"
   lngvalue=HMIRuntime.Tags("Tag1").Read
   strsql="insert into WINCC_DATA(Tag) values("&lngvalue&");"
   set objconnection=createobject("ADODB.Connection")
   objconnection.connectionString=strconnectionstring
   objconnection.Open
   set objCommand=CreateObject("ADODB.Command")
   with objcommand
   .ActiveConnection=objconnection
   .CommandText=strsql
   end with
   objcommand.Execute
   set objcommand=nothing
   objconnection.Close
   set objconnection=nothing
   你可以在一个画面里,添加一个按钮,将这个按钮的按钮属性设为执行这段脚本。
   这段脚本只向Tag这一个域里写Tag1数据。如果要写别的域的数据可以修改Sql语句,按照你的需要了........
   脚本中Tag1是你在Wincc中定义的一个变量。

最佳答案

楼主列举的步骤有一些小问题,可能是引用资料有笔误。可以按照以下的步骤操作,
 1. 通过“开始”-- Microsoft Office,打开Microsoft Office Access 2003/2007,新建空白的数据库,定义数据库名称为WinCC_Access。把默认的“表1”或Table1重命名为Wincc_Data,并在表名上右键“设计视图”,切换到设计视图,保留已有的ID字段(系统自动标号),新增加一个字段重命名为Tag,数据类型与要从WinCC中读取的变量一致。存盘退出。
 2. 通过“控制面板”--“管理工具”打开“数据源(ODBC)”,在“系统DSN”中添加新的ODBC数据源,驱动程序选择Driver Do Microsoft Access(*.mdb),或Microsoft Access(*.mdb),完成后输入数据源名称Sample,数据库“选择”步骤1中保存的数据库WinCC_Access。
 3. 略。
 楼主列举的步骤1中的数据表Wincc_Table在步骤3的代码中没有引用,而步骤3中SQL插入语句中的数据表为Wincc_Data,应该是步骤1中的笔误。
 楼主最好还是参考WinCC在线帮助中“使用WinCC” -- VBS for Creating Procedures and Actions -- Examples of VBScript -- General Examples -- Example: Configuring a Database Connection with VBS中的Procedure, Example 1。
 

提问者对于答案的评价:
谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc311771.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日 下午2:58
下一篇 2020年11月1日 下午2:58

相关推荐