首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

第一次写ADO的代码,不知道应写在哪里?解决办法

2012-02-15 
第一次写ADO的代码,不知道应写在哪里?请问下面这段例子代码应该写在哪里?以下是代码========

第一次写ADO的代码,不知道应写在哪里?
请问下面这段例子代码应该写在哪里?
=============以下是代码===========
        Dim   cnn1   as   adodb.connection
        Dim   rec1   as   adodb.recordset
        dim   str1   as   string

        Set   cnn1   =   new   adodb.connection
        Set   rec1   =   new   adodb.recordset

        cnn1.open= "DSN=dbtmp "
        str1= "select   *   from   list1 "
        rec1=cnn1.execute   str1

        cnn1.close
        rec1.close
=========以上是代码========

这段是全部写在Private   Sub   Form_load()....End   Sub   里面吗?
还是要把Set   cnn1、rec1的部分写在外面,
还是要把cnn1.close的部分写在外面?

多谢!

[解决办法]
public sub aaa
Dim cnn1 as adodb.connection
Dim rec1 as adodb.recordset
dim str1 as string

Set cnn1 = new adodb.connection
Set rec1 = new adodb.recordset

cnn1.open= "DSN=dbtmp "
str1= "select * from list1 "
rec1=cnn1.execute str1

cnn1.close
rec1.close
end sub


///这是一个过程 你放到哪里执行都可以了
[解决办法]
如果你的连接要在同一个窗口别的事件里用,那么连接open时就写在formload里面,close写在formunload里.
如果连接在整个工程里使用用,那么就在公共模块里设一个连接公共变量,然后在整个程序退出时再关闭.
[解决办法]
Dim cnn1 As adodb.connection
Dim rec1 As adodb.Recordset
Dim str1 As String

Private Sub Form_Load()
Set cnn1 = New adodb.connection
Set rec1 = New adodb.Recordset
cnn1.open = "DSN=dbtmp "
str1 = "select * from list1 "
rec1=cnn1.execute str1
End Sub

Private Sub Form_Unload(Cancel As Integer)
cnn1.Close
rec1.Close
End Sub

Private Sub Command1_Click()
Debug.Print rec1.filed(0)
End Sub
[解决办法]
set rec1=cnn1.execute(str1)
[解决办法]
现在也一直在讨论这个问题!
是用了就马上关闭连接呢,(及时释放资源),用的时候再打开(消耗资源)
还是一直打开(保留资源占用),用的时候直接取数据!
具体情况具体分析吧,看你采数据是否频繁,自己寻找最佳方案了!
[解决办法]
Dim cnn1 as adodb.connection
Dim rec1 as adodb.recordset
dim str1 as string

Set cnn1 = new adodb.connection
Set rec1 = new adodb.recordset

cnn1.open= "DSN=dbtmp "
str1= "select * from list1 "
rec1=cnn1.execute str1

cnn1.close
rec1.close
改成函数 要操作数据库的时候调用下比较好

热点排行