【发布时间】:2017-06-10 07:36:08
【问题描述】:
我有一个包含超过 10k 条记录的 DBF 文件,我需要使用 vb.net OleDbCommand 使用 Visual FoxPro 的 SEEK 命令(以加快搜索速度)搜索记录。我尝试使用EXECSCRIPT() 来执行 VFP 命令。这是我的代码:
Using oleCon As OleDbConnection = New OleDbConnection("C:\Users\maymay\Documents\DBF File")
Try
oleCon.Open()
oleCom.Connection = oleCon
oleTrans = oleCon.BeginTransaction(IsolationLevel.ReadCommitted)
oleCom.Transaction = oleTrans
oleCom.CommandText = "EXECSCRIPT([USE 'C:\Users\maymay\Documents\DBF File\201-file.dbf' ALIAS AA])"
oleCom.ExecuteNonQuery()
oleCom.CommandText = "EXECSCRIPT([SELECT AA])"
oleCom.ExecuteNonQuery()
oleCom.CommandText = "EXECSCRIPT([SEEK('105345')])"
oleCom.ExecuteNonQuery()
oleTrans.Commit()
Catch ex As Exception
Try
oleTrans.Rollback()
MessageBox.Show("Error occurred. Rollback success")
Catch rb As Exception
MessageBox.Show("rollback failed")
End Try
End Try
End Using
但线
oleCom.CommandText = "EXECSCRIPT([USE 'C:\Users\maymay\Documents\DBF File\201-file.dbf' ALIAS AA])"
返回异常
未找到变量“ ”。
我试图删除[ ],消息变成了
缺少函数名)。
我错过了什么?或者有没有其他更快的方法来使用 vb.net OledbCommand 在 DBF 中查找记录?任何帮助将不胜感激。
【问题讨论】:
标签: wpf vb.net visual-foxpro oledbcommand