您的位置:程序门 -> vb -> 数据库(包含打印,安装,报表)



数据库连接


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


数据库连接
发表于:2007-02-13 09:19:02 楼主
高手请帮忙:我现在需要一次打开几个sql数据表,怎样连接是最简单的,而且速度快,谢谢
发表于:2007-02-13 09:54:291楼 得分:0
public   cn   as   new   adodb.connection

dim   rs(5)   as   new   recordset
dim   sql   string

cn.open   "provider   =   sqloledb.1;persist   security   info   =   false; "   &   _
        "user   id   =   adminid;password   =   youpwd;data   source   =   youserver; "   &   _
        "initial   catalog   =   youdb "

sql= "select   *   from   tb1 "     &   vbcrlf   &   _
        "select   *   from   tb2 "     &   vbcrlf   &   _
        "select   *   from   tb3 "     &   vbcrlf   &   _
        "select   *   from   tb4 "     &   vbcrlf   &   _
        "select   *   from   tb5 "


dim   i   as   integer
for   i   =   1   to   5
        rs(i).cursorlocation   =   aduseclient
next

rs(1).open   sql,   conn,   adopenkeyset,   adlockoptimistic
set   rs(2)   =   rs(1).nextrecordset
set   rs(3)   =   rs(2).nextrecordset
set   rs(4)   =   rs(3).nextrecordset
set   rs(5)   =   rs(4).nextrecordset

这样是一种方法
发表于:2007-02-13 10:45:472楼 得分:0
谢谢!!!不过还有问题:
for   i   =   1   to   5
        rs(i).cursorlocation   =   aduseclient
next

rs(1).open   sql,   conn,   adopenkeyset,   adlockoptimistic
set   rs(2)   =   rs(1).nextrecordset
set   rs(3)   =   rs(2).nextrecordset
set   rs(4)   =   rs(3).nextrecordset
set   rs(5)   =   rs(4).nextrecordset
这一段是什么意思?请指教,谢谢
发表于:2007-02-13 11:31:013楼 得分:0
1.
rs(i).cursorlocation   =   aduseclient
每个记录集都使用客户端游标。这个可选,默认是服务器端游标,速度快,但不支持某些属性和方法,比如不能返回正确的recordcount

2.
注意你的sql语句,返回的是一个序列的recordset对象。nextrecordset方法就是清除当前   recordset   对象,返回序列中的下一个记录集。


快速检索

最新资讯
热门点击