在WinCC的VBS环境下编写代码对SQL数据库进行单表多条件查询? WinCC页面上 有三个文本框输入区域,输入/输出域1填写--工件编号,输入/输出域2填写--姓名1,输入/输出域3填写--姓名3 (以上3个变量 数据类型 均为 文本变量8位字符集) 用以上三个条件的任意组合从SQL数据库中筛选数据,当上边的三个输入域全部为空时,点击查询按钮显示全部数据,当其中一个或2个条件为空时,为空的条件不参与查询,这样的SQL语句改怎样写? 我写了几句,编译时说语法错误...................?
Sql = "Select * FROM GJ_Infor WHERE 1=1
If !String.Is Null Or Empty(GJ_Num.Value) Then REM:工件编号条件
Sql += " and GJ_Num = " + GJ_Num.Value
If !String.Is Null Or Empty(SX_CZ.Value) Then REM:姓名1条件 Sql += " and CZY = " + SX_CZ.Value
If !String.Is Null Or Empty(SX_JY.Value) Then REM:姓名2条件 Sql += " and JYY = " + SX_JY.Value 已经搞了2天了,请大家分析分析原因
-------sql=sql+。。。。。。。。
你的是c+的语法
-------谢谢!执行语句我已经发现问题改过来了Sql =Sql+ " and GJ_Num = " + "&GJ_Num.Value&" 但是前边的 If 条件语句 还是有问题,在VBS下边应该怎么写呢? 麻烦您指点一下?
----If !String.Is Null Or Empty(GJ_Num.Value) Then REM:工件编号条件 Sql =Sql + " and GJ_Num = " + GJ_Num.Value end if If !String.Is Null Or Empty(SX_CZ.Value) Then REM:姓名1条件 Sql =Sql + " and CZY = " + SX_CZ.Value end if If !String.Is Null Or Empty(SX_JY.Value) Then REM:姓名2条件 Sql =Sql + " and JYY = " + SX_JY.Value end if
---------If !String.Is Null Or Empty(GJ_Num.Value) Then 这句编译时 提示 语法错误?
我这个条件的意思是想写 如果输入域中GJ_Num没有输入任何东西,为空或空格 它就不参与数据查询?
编译的时候,编译不过去!
-------dim mytag
mytag=hmiruntime.tags("GJ_Num").read if mytag<>"" then GJ_Num变量值不为空时需要执行的脚本 end if
-----------------也可以用Len()函数来判别。 If Len(hmiruntime.tags("GJ_Num").read) > 0 Then
|