wincc与数据库连接问题

在数据库2008新建了一个一个ss123数据库,数据库的表名为1,。上位机wincc新建本地变量Data1 、 Data2 、Data3   、data4、data5、data6,想将数据库中的数据与本地变量连接起来,实现数据传递,由两个按钮来实现。从数据库中读数据代码如下:
Dim sCon   
Dim sSql   
Dim oRs  
Dim conn 
Dim oCom 
Dim Con   
Dim Data1 
Dim Data2 
Dim Data3   
Dim data4 
Dim data5 
Dim data6 
con="Provider=SQLOLEDB.1;Persist Security Info=True;Initial Catalog=ss123;User ID=sb;Password=password;Data Source=.\WINCC"
Set conn = CreateObject("ADODB.Connection") 
conn.ConnectionString = Con 
conn.CursorLocation = 3 
conn.Open     
sSql="SELECT * FROM [1] WHERE 编号=1"  
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  
data4=oRs.Fields(0).Value 
data5=oRs.Fields(1).Value 
data6=oRs.Fields(2).Value   
data1.write data4   
Set data1=HMIRuntime.Tags("编号")  
Set data2=HMIRuntime.Tags("姓名")  
Set data3=HMIRuntime.Tags("年龄") 
data1.Read    
data1.Write data4  
data2.Read    
data2.Write data5  
data3.Read    
data3.Write data6   
Set oRs = Nothing  
conn.Close   
Set conn = Nothing
给数据库中写数据代码如下:
Dim sCon  
Dim sSql   
Dim oRs   
Dim conn  
Dim oCom 
Dim Con   
Dim Data1
Dim Data2
Dim Data3    
Data1=HMIRuntime.tags("编号").read 
Data2=HMIRuntime.tags("姓名").read 
Data3=HMIRuntime.tags("年龄").read  
Con="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ss123;Data Source=.\WINCC" 
Set conn = CreateObject("ADODB.Connection")  
conn.ConnectionString = Con 
conn.CursorLocation = 3 
conn.Open  
sSql="insert into [1] 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 
在画面做了几个变量显示框,一致没有显示。求大神指点,我的邮箱806258099@qq.com

钻石用户推荐最佳答案

两个问题。
1、第一段代码中
Set oRs = oCom.Execute  
Set oRs = Nothing  
第一句刚刚查询,第二句就将查询的记录集给清掉了。后面哪会有数据呢?
2、第二段代码,插入操作时,不需要命令集和记录集。
conn.Open  
sSql="insert into [1] VALUES(”" & Data1 & "”,”" & Data2&"”,”"&Data3&"”);" 
conn.Execute sSq
就行了。
另外,Insert语句中,字段类型是字符串的,在 VALUES中需要加单引号,如编号,姓名;而年龄是数字型(比如整型),在赋值时,就不能加引号。

提问者对于答案的评价:

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午12:15
下一篇 2021年7月5日

相关推荐

  • wincc6.2 详细学习资料

    wincc6.2 入门学习资料,有电子版请给我发一份,谢谢!邮箱: xiawangping@163.com 最佳答案 关于WinCC产品的更多相关技术内容,请参…

    SIMATIC WinCC 2019年6月11日
  • WINCC桌面快捷方式启动问题

    请教一下大神们关于WINCC在桌面做了一个快捷方式双击启动问题,启动了但是没有激活运行项目是上面原因?如图所示。  该空格的地方 和该左右斜杠的也都按…

    2021年7月5日
  • C#编写的OPC客户端是否可以访问wincc内部变量

    C#编写的OPC客户端是否可以访问wincc内部变量,内部变量的作用一直不是很清楚,请高手能提供解答或资料 最佳答案 1.wincc变量有两种:分内部变量和外部变量.外部变量是和W…

    SIMATIC WinCC 2019年6月11日
  • wincc中如何用按钮切换画面

    我在wincc项目中组态了多个画面,组态了一个框架画面,在框架画面底部组态了9个按钮,分别连接9个画面,在框架画面中组态了画面窗口1和画面窗口2,分别连接主画面和标题画面,设定框架…

    SIMATIC WinCC 2019年6月11日
  • WINCC6.0图形画面

    图形画面视图语言英文改成中文,确定保存画面,画面?消失画面显示正常,重新打开该画面故障扔就一样,显示?没有被保存,请高手赐教? 最佳答案 1、编辑的画面组态语言与原先的组态语言不符…

    SIMATIC WinCC 2021年7月5日
  • wincc 如何判断时间是不是 在 2:00(凌晨)之前?

    wincc自带systemInfol里时间,能不能用来判断?或者 有哪位大神有更高明的方法能判断出时间是否早于 2:00?求大神指点迷津~ 最佳答案 1、可以在…

    SIMATIC WinCC 2021年7月5日
  • wincc7.4操作记录

    wincc7.4怎么做操作记录和报警记录,都用报警控件怎么把他们分开用单独的报警控件?另外用户登录和注销怎么做记录? 最佳答案 1.对于操作记录,有操作员输入和audit记录,前者…

    SIMATIC WinCC 2021年7月5日
  • WinCC中的C动作

    请各位大侠帮忙看看我的代码有什么问题: int x; BOOL s; s=GetTagBit("lx");&n…

    SIMATIC WinCC 2019年6月11日
  • 建立趋势后,数据无法连接,所访问的变量没有问题

    我建趋势图,为何变量无法连接Set objCon1 = HMIRuntime.ActiveScreen.ScreenItems("控件2&q…

    2021年7月5日
  • Wincc上的显示压力值比实际值小一半?

    有一锅炉,前后各一个水位压力变送器,前一阵,后面这个压力变送器坏了,现更换一个,更换后,在WINCC上显示的压力值比前面这个的值刚好小一半,请问各位大侠,这是什么原因呢?PLC是S…

    2017年11月16日

发表回复

登录后才能评论