wincc中vb查询语句问题

当我执行这个查询语句是,可以运行
data17=HMIRuntime.tags("cxgz").read
data16=HMIRuntime.tags("cxgc").read
sSql="SELECT * FROM zg WHERE 管长='"&data16&"' And 管重='"&data17&'""
当我增加一个条件时
data17=HMIRuntime.tags("cxgz").read
data16=HMIRuntime.tags("cxgc").read
data15=HMIRuntime.tags("cxgg").read
sSql="SELECT * FROM zg WHERE 管长='"&data16&"' And 管重='"&data17&"' And 规格='"&data15&"'"
却运行不了
多条件查询是可以用and连接啊,为什么用不了,求帮助啊

最佳答案

看上去是没有错的,是不是你写程序的时候换行了,换行应该有换行连接字符。
还有可能就是你的数据格式有问题,比如你的规格数据数据库里面和变量里面 一个是字符型  一个是整数。比如都是123,你要区分是数字的123 还是字符的123,最好统一下。

1.你可以使用messagebox() 函数将''"&data15&"'' 输出来看看,你也可以用messagebox()将sql操作字符串输出看看对不对。
2.其实如果你怀疑and 你可以将这个SQl执行的操作结果数据集再进行一次查找。就不用and了。但是没有必要这么干!

祝你好运!

提问者对于答案的评价:
有理,受教了

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月14日 下午12:27
下一篇 2018年12月14日 下午12:27

相关推荐