wincc的MS SQL数据库如何读取某一行某一列的值?下面的程序只能读取第一行某一列的值,大神帮忙看下怎么弄,谢谢了。

Dim TV,Key,Text,Text1,Key1,Mystring
Dim sCon 
Dim sSql 
Dim oRs 
Dim conn 
Dim oCom 
Dim Con
Dim Data1,Data2,Data4,Data3,Data5,Data6
Dim Data7,Data8,Data9,Data10
Dim Data11,Data12,Data13,Data14


Con="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=WINCC_XIN;Data Source=.\WINCC" 
Set conn = CreateObject("ADODB.Connection")  
conn.ConnectionString = Con 
conn.CursorLocation = 3 
conn.Open
 
sSql="SELECT  *  FROM  TREEVIEW WHERE CHANGJING='aaaaaaaaa';" 

Set oRs = CreateObject("ADODB.Recordset") 
Set oCom = CreateObject("ADODB.Command") 
Set oCom.ActiveConnection = conn 
oCom.CommandType = 1 
oCom.CommandText = sSql 
Set oRs = oCom.Execute 

Data1=oRs.Fields(1).Value
Set Data5=HMIRuntime.Tags("age") 
Data5.Read 
Data5.Write Data1 
Set Data2.text=HMIRuntime.Tags("name")
Set oRs = Nothing  
conn.Close   
Set conn = Nothing

问题补充:
对不起啊,我没说清楚,举个例子
"CHANGJING"这一列下面有十个相同的“场景”我如何读取到每一个“场景”

最佳答案

你这个脚本本来就是要读取第一列的数据呀!age=data5=data1=oRs.Fields(1).Value。
你想读取哪些?
需要更多的数据你就读取更多的列呀!
data6=oRs.Fields(2).Value
data7=oRs.Fields(3).Value
data8=oRs.Fields(4).Value
data9=oRs.Fields(5).Value
data10=oRs.Fields(6).Value
.....................
然后把这些写到wincc的变量中。

提问者对于答案的评价:
你回答的是对的,可是我想要读取每一行的,该怎么读取呢?

最佳答案作者回复:
那就用while循环呀!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月1日
下一篇 2017年6月1日

相关推荐