???一段访问DBF库的代码,出现了运行出现外表不是预期的格式的提示,如何处理???

sl80509 2003-04-01 08:25:49
table_name = ListBox1.List(ListBox1.ListIndex)
DataGird1.Caption = table_name
provider = "provider = microsoft.jet.oledb.4.0"
datasource = "data source= " & App.Path + "\;Extended properties=dBase 5.0"
Adodc1.ConnectionString = provider & ";" & datasource
Adodc1.CommandType = adCmdTable
Adodc1.RecordSource = table_name 'dbf文件名
Set DataGrid1.datasource = Adodc1
Adodc1.Refresh

多谢 zsgzsgzsg(zsg),但是改完后。运行出现外表不是预期的
格式提示,我用的是VFro6.0建立库
...全文
56 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
chenyu5188 2003-04-04
"SourceDB=;" & app.path & "\data" & _
这一句有点手误,少了一个分号,现改为:
"SourceDB=;" & app.path & "\data;" & _
回复
zsgzsgzsg 2003-04-02
http://expert.csdn.net/Expert/topic/1601/1601494.xml?temp=.4547388
回复
lxcc 2003-04-02
运行出现外表不是预期的
你预期的是什么样?

还有
provider = "provider = microsoft.jet.oledb.4.0"
datasource = "data source= " & App.Path + "\;Extended properties=dBase 5.0"

改改,改成chenyu5188(蓝色情调) ( )的形式
回复
chenyu5188 2003-04-02
上面的小修改一下:
Dim cnstr As String
table_name = ListBox1.List(ListBox1.ListIndex)
DataGird1.Caption = table_name
cnstr = "Driver={Microsoft Visual FoxPro Driver};" & _
"SourceType=DBF;" & _
"SourceDB=;" & app.path & "\data" & _
"Exclusive=No"
Adodc1.CommandType = adCmdTable
Adodc1.ConnectionString = cnstr
Adodc1.RecordSource = XXX表 'dbf文件名
Adodc1.refresh
Set DataGrid1.datasource = Adodc1
datagrid1.Refresh

假设你的数据库文件存放在app.path 中的\data目录下。
app.path是取得当前可执行文件的路径。
回复
chenyu5188 2003-04-02
可以引用ADO对象来搞定。
你首先要在VB菜单中:
“工程”-->“引用”-->“Microsoft AxtiveX Data Objects 2.1 Library"
示例:

Private Sub command1_click()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim cnstr As String
cnstr = "Driver={Microsoft Visual FoxPro Driver};" & _
"SourceType=DBF;" & _
"SourceDB=;" & app.path & "\data" & _
"Exclusive=No"
cn.Open cnstr
rs.CursorLocation = adUseClient
rs.Open "select * from XXX.DBF", cn, adOpenKeyset, adLockBatchOptimistic
Set DataGrid1.DataSource = rs
DataGrid1.Refresh
End Sub

以上示例程序的作用是将XXX.dbf表中的数据显示在datagrid1控件中。

你程序内要改的主要是连接字符串。你可以参考以上的示例来做。

Dim cnstr As String
table_name = ListBox1.List(ListBox1.ListIndex)
DataGird1.Caption = table_name
cnstr = "Driver={Microsoft Visual FoxPro Driver};" & _
"SourceType=DBF;" & _
"SourceDB=;" & app.path & "\data" & _
"Exclusive=No"
Adodc1.ConnectionString = cnstr
Adodc1.CommandType = adCmdTable
Adodc1.RecordSource = XXX表 'dbf文件名
Set DataGrid1.datasource = Adodc1
Adodc1.Refresh

假设你的数据库文件存放在app.path 中的\data目录下。
app.path是取得当前可执行文件的路径。
回复
相关推荐
发帖

1187

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2003-04-01 08:25
社区公告
暂无公告