当前位置: 主页 > PLC控制

wincc 连接oracel数据库

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


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

请问我要改哪些
DRIVER={OracleODBCDriver}改成DRIVER={myoraCEl}
UID=Sys改成UID=platform
PWD=Sys改成PWD=123456
DBQ=Sys改成DBQ=liquid_shoRT
我这里有疑问strSQL="selectnamefromstuwhereID=1;这句话应该是查找条件吧
比如我要把如数据表中CNC_ID、CUT_FLUID_TYPE这些信号读上来我应该怎么写,如果要把数据写道数据表中又应该怎么写

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

图片说明:

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

最佳答案


SELECTCNC_ID,CUT_FLUID_TYPEFROMLIQUID_SHORT

插入应该是

insertCNC_ID,CUT_FLUID_TYPEvalues()FROMLIQUID_SHORT

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

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

最佳答案作者回复:
是的,既然都等于3了,可以
selectCUT_FLUID_TYPEfromliquid_shortwhereCNC_ID=3

  • 关注微信

猜你喜欢

微信公众号