代码如下:Public Const filename = "C:\BG\NUM"
Public Const g_connectStringVf = "PROVIDER=MSDASQL.1;Persist Security Info=False;Driver={Microsoft Visual FoxPro Driver};UID=;SourceDB=C:\BG\NUM;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;"Public Function ExecuteSQL(strSQL As String) As ADODB.Recordset
Dim sql As String
Dim rs As New ADODB.Recordset
Dim con As New ADODB.Connection
rs.MaxRecords = 0
con.open g_connectStringVf
'Debug.Print strSQL
rs.open strSQL, con, 1, 3
'rs.open strSQL, con, adOpenKeyset, adLockReadOnly
Set ExecuteSQL = rs
End Functionsql = "select * from 200904250912.dbf"
Set rs = ExecuteSQL(sql)运行vb提示:实时错误'-2147217887(80040e21)' odbc 驱动程序不支持所需的属性
但是单独在vf命令窗口执行sql语句,则正确!
不知问题出在哪里?
Public Const g_connectStringVf = "PROVIDER=MSDASQL.1;Persist Security Info=False;Driver={Microsoft Visual FoxPro Driver};UID=;SourceDB=C:\BG\NUM;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;"Public Function ExecuteSQL(strSQL As String) As ADODB.Recordset
Dim sql As String
Dim rs As New ADODB.Recordset
Dim con As New ADODB.Connection
rs.MaxRecords = 0
con.open g_connectStringVf
'Debug.Print strSQL
rs.open strSQL, con, 1, 3
'rs.open strSQL, con, adOpenKeyset, adLockReadOnly
Set ExecuteSQL = rs
End Functionsql = "select * from 200904250912.dbf"
Set rs = ExecuteSQL(sql)运行vb提示:实时错误'-2147217887(80040e21)' odbc 驱动程序不支持所需的属性
但是单独在vf命令窗口执行sql语句,则正确!
不知问题出在哪里?
既然打开的rs是只读的,修改rs.open strSQL, con, 1, 3为:
set rs=con.execute(strSql)
没用过FoxPro,试试吧...