如题目!小弟N年没有用VB6,请各位大侠执教!
问题一,如题,难道要一条一条Insert?有什么好方法?
问题二,我的连接FOXPRO的代码为何不行?代码如下?Dim strCon As String
Dim strFile As String
strFile = App.Path + "\200508.dbf"
strCon = "provider=msdasql;DRIVER=Microsoft Visual FoxPro Driver;UID=;Deleted=yes;Null=no;Collate=Machine;BackgroundFetch=no;Exclusive=No;SourceType=DBF;SourceDB='" & strFile & "';"Dim objConnect As ADODB.Connection
Set objConnect = New ADODB.Connection
objConnect.ConnectionString = strCon
objConnect.OpenDim rs As ADODB.Recordset
Dim strSQL As String
strSQL = "select * from a"
Set rs = New ADODB.Recordsetrs.Open strSQL, objConnect, adOpenStatic, adLockReadOnlySet Me.DataGrid1.DataSource = rs
问题一,如题,难道要一条一条Insert?有什么好方法?
问题二,我的连接FOXPRO的代码为何不行?代码如下?Dim strCon As String
Dim strFile As String
strFile = App.Path + "\200508.dbf"
strCon = "provider=msdasql;DRIVER=Microsoft Visual FoxPro Driver;UID=;Deleted=yes;Null=no;Collate=Machine;BackgroundFetch=no;Exclusive=No;SourceType=DBF;SourceDB='" & strFile & "';"Dim objConnect As ADODB.Connection
Set objConnect = New ADODB.Connection
objConnect.ConnectionString = strCon
objConnect.OpenDim rs As ADODB.Recordset
Dim strSQL As String
strSQL = "select * from a"
Set rs = New ADODB.Recordsetrs.Open strSQL, objConnect, adOpenStatic, adLockReadOnlySet Me.DataGrid1.DataSource = rs
http://www.a5d.com/InfoView/Article_817.asp
谁能告诉我我上面的代码连接DBF,哪儿TNND错了...呵呵Dim strCon As String
Dim strFile As String
strFile = App.Path + "\200508.dbf"
strCon = "provider=msdasql;DRIVER=Microsoft Visual FoxPro Driver;UID=;Deleted=yes;Null=no;Collate=Machine;BackgroundFetch=no;Exclusive=No;SourceType=DBF;SourceDB='" & strFile & "';"Dim objConnect As ADODB.Connection
Set objConnect = New ADODB.Connection
objConnect.ConnectionString = strCon
objConnect.OpenDim rs As ADODB.Recordset
Dim strSQL As String
strSQL = "select * from a"
Set rs = New ADODB.Recordsetrs.Open strSQL, objConnect, adOpenStatic, adLockReadOnlySet Me.DataGrid1.DataSource = rs
于是我换了个连接字符串
报错内容二::[Microsoft][ODBC dbase Driver] file 'a.dbf' does not exist
我的dbf文件根本不叫这个a.dbf名字晕~~在线等....
txtsql = "select * into tempTable from [dBase III;database=" & Trim(DbfPath) & "].[" & DbfFil & "]"
cn.execute(txtsql)temptable是一个临时表,dbfpath是表的路径,dbffil是表名
我这里用的是dBase III,但导入foxpro的表一样能成功,你参考一下
Dim rS As New ADODB.Recordset'/------------连接VFP数据表
'/------------'返回值:=TRUE 连接成功,=FALSE 连接失败。
'/------------例如:cDbfPath=绝对路径(注意 不带数据表名称)
Private Function ConnVfp(cDbfPath As String, ByRef Cn As ADODB.Connection) As Boolean
Dim strConnect As String '连接字符串
On Error GoTo ConnErr
strConnect = "Provider=VFPOLEDB.1;SourceType=DBF;Data Source=" & cDbfPath
Cn.ConnectionString = strConnect '指定连接字符串
Cn.Open '连接数据库
ConnVfp = True
Exit Function
ConnErr:
MsgBox "连接数据库失败。"
ConnVfp = False
End FunctionPrivate Sub Command1_Click()
Dim cSql As String, cDbfPath As String
cDbfPath = "E:\City\Data"
'1/--------------------------------------------------------------------------------------------------------
' /-----------连接VFP数据库
Set Cn = New ADODB.Connection
If ConnVfp(cDbfPath, Cn) = False Then Exit SubcSql = "Select Sta_id,year,mon,day,City " & _
"From City.DBF " & _
"Where Sta_id='0015' And Year='1986' And Mon='01' order by Year "
'2/--------------------------------------------------------------------------------------------------------
' /-----------使用一个新数据集
Set rS = New ADODB.Recordset
rS.CursorLocation = adUseClient
rS.Open cSql, m_Con, adOpenDynamic, adLockOptimistic
End Sub