NXY13661223263 2020-04-02 12:27 采纳率: 50%
浏览 392

VB程序运行中出现“连接无法用于执行此操作。在此上下文中它可能已被关闭或无效?”是怎么回事?

第10行是出错代码
Dim ab As New ADODB.Connection
Dim dn As New ADODB.Recordset

Private Sub Command1_Click()
If Text1.Text = 0.25 Then
Dim bs As String
ab.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Administrator\Desktop\法兰GB文献\VB数据库练习\97版库\非金属软垫片1.mdb"
ab.Open
MsgBox ("连接成功")
bs = "select * from 非金属软垫片0,25 where DN = '" & Val(Text2.Text) & "'"
dn.Open bs '出错代码是这一行
Text4.Text = dn.Fields(D3)
End If
dn.Close '关闭记录集对象
Set dn = Nothing '释放内存
ab.Close '关闭数据库对象
Set ab = Nothing '释放内存
End Sub

  • 写回答

1条回答 默认 最新

  • 憧憬blog 2023-03-15 01:47
    关注

    这个错误通常是由于连接已经被关闭或者无效导致的。根据您提供的代码,出错的行是 'dn.Open bs'。我建议您检查以下连接字符串和表名是否正确。如果表名带有空格,则需要在查询中使用方括号,例如:“select * from [非金属软垫片0,25] where DN = 'xxx'”。此外,也可以尝试使用 Try...Catch 结构来对异常进行捕获,并进行适当处理。

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!