当我与ADODC建立连接以访问database.mdb时该连接成功,我可以通过它发出SQL命令。
我选择数据时没关系。
ADODC1.recordsource="SELECT Name FROM Product"
ADODC1.refresh
但插入或更新时出错。
ADODC1.recordsource"INSERT INTO Product (ID,Name,Quantity,Price,Category) VALUES ('" & txtbarcode & "','" & txtname & "','" & txtqty & "','" & txtprice & "','" & category & "')"
ADODC1.refresh
错误消息是"当对象关闭时不允许操作" 我不知道为什么会收到此错误。请帮我抓住这个错误消息或解决它。提前谢谢!
答案 0 :(得分:0)
首先,ADO数据控件存在很多像这样的问题。解决它们的最简单方法是不使用它!我以前从来没有用它来插入数据,在搞乱之后我会说这是Refresh方法本身的一个错误。我设置了一些类似于你的代码,我发现虽然它实际上成功地插入了数据,但问题仍然存在。它还忽略了使用“On Error Resume Next”禁用错误处理程序的任何尝试。所以,我建议现在是学习如何使用ADO数据对象的时候了。
要执行您想要的操作,您将需要一个Connection对象和一个Command对象。如果您不想使用Command对象,则只能使用Connection的Execute方法,但不能在不使用Command对象的情况下执行存储过程。存储过程比直接SQL语句安全得多,因此您最终会想要使用它们。 (顺便说一句,既然你没有尝试显示任何数据,你就不需要Recordset对象了。)所以,请阅读这两个,看看你是否可以让它们正常工作。相信我,你会很高兴你遇到了麻烦。