用户归档中的数据有文本型的,我想按照该文本型字段内容等于某一内部变量的值 查出对应的那一条记录。以整型的为条件的方式我查出来了,但文本型的我怎么也查不出来。请大家SELECT * FROM UA#'Test WHERE 字段名='neirong'
这样直接指定字段内容的查询我成功了。
我想用变量作为查询条件,变量值不同时查出不同的记录数据
szSQL = "SELECT * FROM UA#TEST WHERE 字段名='" & HMIRuntime.Tags("变量").Read & "'" 这种方式对以整型的数据为查询条件可以,8位字符集的数据为查询条件查不出来
请dcount107 - 顶级工程师 第12级 给予解答,十分感谢
专家建议
仔细分析了您的脚本。在'" & HMIRuntime.Tags("变量").Read & "'"该处多了一对单引号。
另:关于脚本调试的问题,只能给您一些建议。具体调试情况在这里就无法掌握了。下面是一个我调试好例子供您参考:
Dim fxtesta
Set fxtesta = HMIRuntime.Tags("fxtesta")
Dim StrTag
Set StrTag = HMIRuntime.Tags("StrTag")
StrTag.Read
fxtesta.Read
fxtesta.Write "select * from UA#MyTestArc where ColumnStr = '"&StrTag.Value&"'"
建议使用上面的SQL查询方式。先读出条件的值,然后在SQL条件中使用。这样便于分析问题的原因。
当然按照您的方法测试也是没有问题的,下面是我测试的脚本(注意:前面加了注释)。
'fxtesta.Write "select * from UA#MyTestArc where ColumnStr = '"&HMIRuntime.Tags("StrTag").Read&"'"
fxtesta.Read
MsgBox fxtesta.Value
提问者对于答案的评价:
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc310971.html