当前位置:编程学习 > VB >>

编辑ADO数据库系统提示“jet引擎找不到表”但再逐步调试又可以了

做了一个程序,数据库中有多个表,使用一个combobox切换不同表,切换时先搜索当前数据库文件是否存在上一个表,如果不存在就创建,然后再在这个表中添加数据,但切换到另外一个表时(也就是添加数据时)都会出现错误提示“jet引擎找不到输入表,请检查拼写是否正确”,但此时如果用access查看数据库文件,这个表事实上已经创建成功,而且此时通过逐步调试发现又可以继续,不知道这是什么回事?
第一次来,还发不了分,见谅

代码如下:
Private Sub CmbDBSwitch_click()
If LvwpQuote.ListItems.Count > 0 And Prev_DB <> "" Then '保存当前已输入报价数据
   Call CreateQFile(tmpQFile, Prev_DB)
   Call AddQPage(Prev_DB)
End If

Private Sub CreateQFile(ByVal QFile As String, ByVal SelDB As String)
Dim connstring As String
connstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & QFile
If Dir(QFile) = "" Then
   Dim qDB As New ADOX.Catalog
   qDB.Create connstring
End If
   Dim qDb_Ado As New ADODB.Connection
   qDb_Ado.ConnectionString = connstring
   qDb_Ado.Open
   qDB.ActiveConnection = connstring
   

If Not TableExists(qDb_Ado, SelDB) Then'判断表是否存在

Select Case SelDB
Case 表一
'创建表一

Case 表二

'创建表二
……
end select
end if
qDb_Ado.Close
Set qDb_Ado = Nothing
end sub

Private Sub AddQPage(ByVal QPage As String)
Dim j As Integer
Dim qstr As String
qstr = "select * from " & QPage
QRs.Open qstr, QConn, 3, 3
QConn.Execute "delete * from " & QPage
With LvwpQuote
For j = 1 To .ListItems.Count
     QRs.AddNew

     For i = 0 To QRs.Fields.Count - 1
         QRs.Fields(i) = .ListItems(j).SubItems(i + 1)
     Next

     QRs.Update
   
Next

End If

Call CloseQRs

End With
End Sub
--------------------编程问答-------------------- 自己顶一顶 --------------------编程问答-------------------- 可以先忽略掉这个错误试试!
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,