IFX数据库访问介绍

 IFIX是一款使用很广的工业上位组态软件,其中最有特色的就是它的实时数据库。IFIX中的数据库分为实时数据库和历史数据库。IFIX为外部系统对数据库的访问提供

 IFIX是一款使用很广的工业上位组态软件,其中最有特色的就是它的实时数据库。IFIX中的数据库分为实时数据库和历史数据库。IFIX为外部系统对数据库的访问提供了ODBC接口,在安装完IFIX后,通过系统管理工具中数据源管理程序可以看到IFIX的DSN名称:FIX Dynamics Historical Data(IFIX历史数据库)和FIX Dynamics Real Time Data(IFIX实时数据库)。在外部系统中就可以通过这两个DSN对IFIX库进行访问。

需要说明的是,我们在写SQL语句时,其中的数据库表名是IFIX的实时库名称,就是节点名称,一般都是FIX,还有就是,IFIX历史数据库和IFIX实时数据库的库结构也不相同,需要注意。

以下我用一段VBS代码来描述数据库访问过程,以供参考:

需要添加Microsoft ActiveX Data Objects 2.0 Library的引用

    Dim conADO As Connection
    Dim rsADO As Recordset

    Dim strTime As String

    

 
    strQuery = "select *  from Fix"

 
    '打开数据库
    If conADO Is Nothing Then
          Set conADO = New ADODB.Connection
          conADO.ConnectionString = "Provider = Microsoft OLE DB Provider for  ODBC Drivers;DSN=FIX Dynamics Historical Data;UID=sa;PWD=;"
          conADO.Open
    End If
   
    If rsADO Is Nothing Then
        Set rsADO = New ADODB.Recordset
    End If

    '打开记录集
    rsADO.CursorLocation = adUseClient
    rsADO.Open strQuery, conADO, adOpenForwardOnly, adLockReadOnly, adCmdText
    '记录
    If rsADO.RecordCount > 0 Then        
        '读取记录
        Do While (Not rsADO.BOF And Not rsADO.EOF)

             strTime =rsADO.Fields("DATETIME").Value & ""

            '下一条
            rsADO.MoveNext
        Loop
    End If

    rsADO.Close
    conADO.Close
    Set conADO = Nothing
    Set rsADO = Nothing