首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >西门子WinCC VBscript到Mysql

西门子WinCC VBscript到Mysql
EN

Stack Overflow用户
提问于 2015-04-04 16:54:04
回答 3查看 5.4K关注 0票数 1

想知道是否有人可以帮助解决以下问题。我正在西门子WinCC中使用Vbscript。当我激活脚本时,"lngValue“变量包含一个带有字母"BC”的字符串,当试图插入数据库时,它会显示一个错误。

如果"lngValue“是空的,那么插入到mysql数据库中是空的,一切正常。(所以所有连接都好,甚至尝试了INT和工作)

我得到以下错误:

MySQLmysqld-5.6.19您的SQL语法出现了错误;请检查与MySQL服务器版本对应的手册,以获得在第1行“BC”附近使用的正确语法。

该脚本如下:

代码语言:javascript
复制
Sub Writetomysql()

Dim lngValue 
Dim lngValue1
Dim commandText
Dim objConn
Dim objRS

 Set objConn = CreateObject("ADODB.Connection")
  objConn.Open "Driver={MySQL ODBC 5.3 ANSI Driver};Server=127.0.0.1;Database=siemens;UID=root;PWD=root;OPTION=3;"
  Set objRS = CreateObject("ADODB.Recordset")

lngValue  = SmartTags("ProductRunning_Mydata.ChargehandInitials")        
lngValue1 = HMIRuntime.Tags("PPM").Read

commandText = "INSERT INTO products (ProductName, PPM) VALUES ('" _
                      & lngValue & "','" & lngValue1 & "')"

    If SmartTags("FinishButton") = 1  Then 
        objRS.Open "products", objConn
        objConn.Execute commandText
        Set objRS = Nothing
        objConn.Close
        Set objConn = Nothing
    End If

End Sub

谢谢史蒂夫。

EN

回答 3

Stack Overflow用户

发布于 2021-01-21 11:24:07

代码语言:javascript
复制
objConn.Open "Driver={MySQL ODBC 5.3 ANSI Driver};Server=127.0.0.1;Database=siemens;UID=root;PWD=root"

尝尝这个

票数 1
EN

Stack Overflow用户

发布于 2015-09-25 14:13:47

在Wincc中,当您将SmartTags调用到VBScript中时,不会更新它们。可能在您构建查询时,由于SmartTags("ProductRunning_Mydata.ChargehandInitials")返回空字符串,所以lngValue是空的。解决这个问题的方法可能是在屏幕中插入一个与标签"ProductRunning_Mydata.ChargehandInitials“相关的隐藏文本框。当您进入屏幕时,SmartTag将被迫更新。

票数 0
EN

Stack Overflow用户

发布于 2016-02-23 07:43:37

Steve,确保tha数据库中的字段是"string“(varchar(x))

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29449034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档