荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: baty (新一代懒人), 信区: Database
标  题: DAO 向 ADO 转化入门
发信站: BBS 荔园晨风站 (Mon Mar 12 22:14:54 2001), 转信

【 以下文字转载自 baty 的信箱 】
【 原文由 baty.bbs@argo.zsu.edu.cn 所发表 】
发信人: CMusic (音韵), 信区: Database
标  题: DAO 向 ADO 转化入门
发信站: 逸仙时空 Yat-sen Channel (Wed Nov  1 00:19:24 2000), 站内信件

 DAO 向 ADO 转化入门

     以下只是我在 DAO 向 ADO 转化的一点总结, 只涉及最基本的部分.

     希望能对各位有用.


    1. 数据库连接

         DAO:

            dim db as database

            set db=opendatabase("c:\game.mdb", false,

                                 false,";PWD=play")

       ADO 用Connection代替了Database,因为 Connection 可以

           连接到任何Ole DB数据源上,当然也可以包括非数

              据库类型的数据,例如文本型数据库.为Access创建

             Connection的代码如下:

            dim dcGame as new adodb.connection

            dcgame.cursorLocation = aduseclient

            dcgame.open "PROVIDER = Microsoft.Jet.Oledb.3.51;" & _

                     "Data Source= c:\game.mdb;"


    2. 在数据库中执行操作.

      DAO

         dim qdf as querydef

            set qdf=db.createquerydef("","Delete * from fighter")

            qdf.execute

            set qdf= nothing


      ADO 利用command对象完成上述操作.

         dim cmd as new adodb.command

         cmd.commandtext="Delete * from fighter")

          cmd.commandType=adCmdText

          set cmd.activeConnection = dcgame (前边有定义)

          cmd.execute

     querydef 和 command还有一个区别在参数查询上, querydef的参数定义

         是在SQL语句中,而command(AdO其他对象也如此)的参数定义则完全变为


          对象定义.


    3. 打开数据集

     DAO

            dim temprec as recordset

            set temprec=db.openrecordset("Fighter")

           (fighter可以是game.mdb中的一个查询或表名)


     ADO

          a. 直接通过 connection

              dim gamerec as new adodb.recordset

              gamerec.cursortype=adOpenKeyset

              gamerec.LockType=adlockOptimistic

              gamerec.open "fighter", dcgame, , adCmdTable

              也可以通过  gamerec.open "Select * from fighter ", dcgame,
 _
                              , adCmdTable)

         b. 通过Command

             dim gamerec as new adodb.recordset

             dim cmd as new adodb.command

             cmd.commandtext="Select * from fighter")

             cmd.commandType=adCmdText

             set cmd.activeConnection = dcgame (前边有定义)

             set gamerec=cmd.execute



     4. 数据操作

          a. 添加

              基本未变.

          b. 删除

              基本未变.

          c. 修改

             DAO:

                 需要先调用Edit方法, 修改后Update.

             ADO:

                 无须调用Edit, 直接修改,而后Update


          a. 添加

              基本未变.

          b. 删除

              基本未变.

          c. 修改

             DAO:

                 需要先调用Edit方法, 修改后Update.

             ADO:

                 无须调用Edit, 直接修改,而后Update

--
为何在这里,无聊像半醉
曾在这空间,跟你相倾诉

※ 来源:.逸仙时空 Yat-sen Channel bbs.zsu.edu.cn.[FROM: 192.168.2.177]
--
※ 转寄:.逸仙时空 Yat-sen Channel bbs.zsu.edu.cn.[FROM: 210.39.3.50]
--
※ 转载:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.1.118]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店