wincc 连接oracel数据库

目前在控制面板-管理工具-数据源中测试已经连接成功,如下图
提问里有这方面的代码如   strConnectionString = "DRIVER={Oracle ODBC Driver};UID=Sys;PWD=Sys;DBQ=Sys;"
 strSQL = "select name from stu where ID = 1;" 
 Set objConnection = CreateObject("ADODB.Connection")
 objConnection.connectionString = strConnectionString
 objConnection.Open
 Set objRecordset = CreateObject("ADODB.Recordset")
 Set objCommand = CreateObject("ADODB.Command")
 objCommand.ActiveConnection = objConnection
 objCommand.CommandText = strSQL
 Set objRecordset = objCommand.Execute
 lngCount = objRecordset.Fields.Count
 If (lngCount>0) Then
 objRecordset.movefirst
 lngValue = objRecordset.Fields(0).Value
 HMIRuntime.Tags("dbValue").Write lngValue


我要连的数据库信息如下图

请问我要改哪些
DRIVER={Oracle ODBC Driver}改成DRIVER={myoracel}
UID=Sys改成UID=platform
PWD=Sys改成PWD=123456
DBQ=Sys改成DBQ=liquid_short
我这里有疑问 strSQL = "select name from stu where ID = 1;这句话应该是查找条件吧
  比如我要把 如数据表中 CNC_ID、CUT_FLUID_TYPE 这些信号读上来 我应该怎么写,如果要把数据写道数据表中又应该怎么写

问题补充:
如何一行一行的读下来,一个CNC_ID 就是一行

图片说明:

wincc 连接oracel数据库    wincc 连接oracel数据库    wincc 连接oracel数据库   

最佳答案


SELECT CNC_ID,CUT_FLUID_TYPE FROM LIQUID_SHORT

插入应该是

insert CNC_ID,CUT_FLUID_TYPE values () FROM LIQUID_SHORT

这个语句和你测试的基本上一样
补充:
这个数据库是按列来的吧
一行是一个数据
就和你测试结果一样,读取两个数据,一行就是两个数据都有,排列形式和表格一样
想读一个的话,那就select 一个参数啊

提问者对于答案的评价:
你好 比如我想读取 CNC_ID =3这一行数据 要怎么写 
select CNC_ID,CUT_FLUID_TYPE from liquid_short where CNC_ID = 3 这样写吗?

最佳答案作者回复:
是的,既然都等于3了,可以
select CUT_FLUID_TYPE from liquid_short where CNC_ID = 3

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月3日 上午11:30
下一篇 2017年6月3日 上午11:30

相关推荐