IFIX-通过ODBC及ADO写数据到ACCESS数据库
- 格式:pdf
- 大小:162.91 KB
- 文档页数:8
通过ODBC及ADO写数据到ACCESS数据库方法一:
新建一个ACCESS数据库,存到C:\ABC.MDB,数据库有一个表FORM,有三个字段ID、
DATETIME、VALUE,并且DATETIME设置的默认值为NOW(),这样每写入一条记录,
自动记录下当前日期时间。
在ODBC里创建系统DSN,由于采用ACCESS数据库,需要选择如图所示的驱动。
点击完成后如下图,写上数据源名为TEST
点击选择按钮
选择C:\ABC.MDB
选择后
选择高级,设置用户名密码均为sa
选择确定后
启动IFIX,新建一个调度TEST
新建一个基于时间项
设置为每5秒触发一次,点V B编辑器,写上如下代码
Private Sub FixTimer3_OnTimeOut(ByVal lTimerId As Long)
Dim conODBC As ADODB.Connection
Dim adoRS As ADODB.Recordset
Set conODBC = New ADODB.Connection
Set adoRS = New ADODB.Recordset
Dim strQuery As String
conODBC.ConnectionString = "DSN = test; UID =sa; PWD =sa;"
conODBC.Open "test", "sa", "sa"
strQuery = "select * from form" '或者表名FORM或者SQL选择语句
adoRS.Open strQuery, conODBC, adOpenDynamic, adLockPessimistic
adoRS.AddNew
adoRS!Value = 454545
adoRS.Update
adoRS.Close
conODBC.Close
End Sub
一定要选择如下图这一步:点击工具-引用,在下所示中,勾上microsoft activex data objects 2.7 library,否则会报错的。
确定后保存。右键点击FIXTIME3这一条,选择调度程序属性
选择为后台运行
选择是
选择是
如上图已经激活,去看数据库吧,已经有数据了。
通过ODBC及ADO写数据到ACCESS数据库方法二:
此方法设置同上方法一,只是精简了代码部分
Private Sub FixTimer3_OnTimeOut(ByVal lTimerId As Long)
Dim conODBC As ADODB.Connection
Set conODBC = New ADODB.Connection
conODBC.ConnectionString = "DSN = test; UID =sa; PWD =sa;"
conODBC.Open "test", "sa", "sa"
conODBC.Execute "insert into form([value]) values(3433) "
conODBC.Close
End Sub
通过ADO写数据到ACCESS数据库方法三:
此方法由于采用了连接字符串,可以免去ODBC设置,纯粹的ADO编程,代码简单,直接
采用SQL语句写数据到ACCESS数据库中。
Private Sub FixTimer3_OnTimeOut(ByVal lTimerId As Long)
Dim conODBC As ADODB.Connection
Set conODBC = New ADODB.Connection
conODBC.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\abc.mdb;Persist Security Info=False" '采用连接字符串,可免去ODBC设置
conODBC.Open
conODBC.Execute "insert into form([value]) values(3433) "
conODBC.Close
End Sub
以上三种方法均可将3433/454545替换为readvalue("Fix32.FIX.ABC.F_CV", 0)读实时数据的
方法,实现将实时数据写到ACCESS。在IFIX3.5/WINDOWS 2000 PROFESSION 带SP4通
过测试。