WINCC读写SQL数据库的示例

wincc读写sql的示例。

一、在数据库中建立数据库文件,文件名为“读写数据库”,在数据库中建立新的表,命名为“个人信息”分别建立编号、姓名、年龄。

二、数据库中建立表后,在wincc中建立与数据库中类型相同的变量,变量类型相同在读写数据时很重要。在图形编辑器中新建画面,并在画面中增加三个输入输出域,并连接变量。

三、添加两个按钮控件,分别命名为写数据、读数据。

1.在写数据中写入如下脚本

dim ssql

dim scom

dim ors

dim conn

dim ocom

dim con

dim data1,data2,data3

‘读取wincc变量

data1=hmiruntime.tags (“number”).read

data2=hmiruntime.tags (“name”).read

data3=hmiruntime.tags (“age”).read

‘连接数据库,此处为数据库连接的标准语法结构。

con=”provider=sqloledb.1; integrated security =sspi;persist security info=false; initial catalog=testdata;data source=.\wincc”

set conn=createobject(“adodb.connection”)

conn.connectionstring= con

conn.cursorlocation=3

conn.open

msgbox “。。。。。”

‘写入数据库,将number/name/age变量的值写到建好的数据库的列中,注意,数据的格式一定要统一。

‘在hmi中组态完成后,运行写入几组数据。打开建好的数据库–>数据表–>右击–>选择前1000行即可看到所输入的数据,此时已经储存。

ssql=”insert into 个人信息 values (‘”&data1&”‘,'”&data2&”‘,'”&data3&”‘);”

‘下面的部分语句,也是数据库的标准语法,对数据库进行操作时,所需要的属性和方法。

set ors=createobject(“adodb.recordset”)

set ocom=createobject(“adodb.command”)

set ocom.activeconnection=conn

ocom.commandtype=1

ocom.commandtext=ssql

set ors=ocom.execute

set ors=nothing

conn.close

set conn=nothing

”””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””””’

2.读取按钮的脚本

dim ssql

dim scom

dim ors

dim conn

dim ocom

dim con

dim data1,data2,data3

dim data4,data5,data6,data7

‘下面的data7变量为在hmi所输入的编号查询变量,结合下面的select语法,将输入与表中编号比较,等于则取出该行值。

data7=hmiruntime.tags (“r_data”).read

‘连接数据库

con=”provider=sqloledb.1; integrated security =sspi;persist security info=false; initial catalog=testdata;data source=.\wincc”

set conn=createobject(“adodb.connection”)

conn.connectionstring= con

conn.cursorlocation=3

conn.open

msgbox “。。。。。”

‘读取数据库

‘下面语句为查询数据库select语句

ssql=”select * from 个人信息 where 编号 = ‘”&data7&”‘;”

‘标准的数据库操作属性和方法

set ors=createobject(“adodb.recordset”)

set ocom=createobject(“adodb.command”)

set ocom.activeconnection=conn

ocom.commandtype=1

ocom.commandtext=ssql

set ors=ocom.execute

‘此处为赋表中的列0-2值到变量data4-6

data4=ors.fields(0).value

data5=ors.fields(1).value

data6=ors.fields(2).value

set data1=hmiruntime.tags (“rnumber”)

set data2=hmiruntime.tags (“rname”)

set data3=hmiruntime.tags (“rage”)

‘下面为将data4-6值写入data1-3中。

data1.read

data1.write data4

data2.read

data2.write data5

data3.read

data3.write data6

‘数据库操作完的结束语句,为标准格式语句。

set ors=nothing

conn.close

set conn=nothing

————————————————————————————————————————————————————

总结:

存在如下不足:

1.数据库的知识不足,具体的操作语句用法不熟悉。

2.vb的语句能看懂并理解,但是细节的更深层次的理解没有。

顺利的完成了该程序的测试,在以后的工作中,如果进行一些数据库数据的分析,掌握了数据库的查询语法知识,可以在wincc内

实现一些数据的展示。而且数据库的连接也操作语法也可以进行套用到别的工程项目中。原理大致类似。

附测试结果:

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐