用了adodc控件来连接MSSQL2K数据源
connectionstring属性:
Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=stu;Data Source=(local)若在(通用)(声明)中加:
Dim rsstu As New ADODB.Recordset
Set adodcstu.Recordset = rsstu
运行后显示 “无效的外部过程”若在form_load中加:
Dim rsstu As New ADODB.Recordset
Set adodcstu.Recordset = rsstu
运行后显示:operation is not allowed when the object is closed!查了网上的说到引用:我在工程--引用下引用了这些:
ole automation,
microsoft activex data objects 2.0 library
microsoft activex data objects (multi-dimenson) 2.6 library
microsoft activex data objects recordset 2.6
microsoft dao 2.5/3.51 compatibility library
microsoft data binding collection
还是未果~~~~~到底是哪里的问题啊?? 刚开始学照着书都不行,太伤信心了~~~~~~~~~~~>O<~~~~~~~~~~~~~~~

解决方案 »

  1.   

    Set adodcstu.Recordset = rsstu
    不能放在声明中,只能放在函数或事件里Dim rsstu As New ADODB.Recordset
    Set adodcstu.Recordset = rsstu
    这里只声明了rsstu对象,并没有打开,不能使用
    例如rst.Open "select * from test1", con,adOpenKeyset,adLockPessimistic
    然后Set adodcstu.Recordset = rsstu
      

  2.   

    我不知道con要怎么写,就只这样写了: rsstu.Open "select * from student"
    我的那个连接是在设置adodc控件的时候就已经写好了。还是有错: 实时错误 '3709'
               the connection cannot be used to perform this operation.
               it is either closed or invalid in this context.
      

  3.   

    我如果这样写的话,又出现这个错误:operation is not allowed when the object is closed!Set conn = Server.CreateObject("ADODB.Connection")
    Dim rsstu As New ADODB.Recordset
    rsstu.Open "select * from student", conn, adOpenDynamic, adLockOptimistic
    Set adodcstu.Recordset = rsstu