当前位置: 网学 > 编程文档 > VB > 正文

VB访问数据库的方法与原则

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/16
下载{$ArticleTitle}原创论文样式
部件的方法。可以在对象和集合之间建立起关系,这些关系就代表了数据库系统的逻辑结构。RDO是ODBCAPI的一个浅层界面接口。是专为访问远程ODBC关系数据源而设计的。

  VBSQL:是VisualBasic结构化查询语言。是一种基于API的接口方法,几乎与C的DB-LibraryAPI相同。VBSQL只支持微软的SQLServer。VBSQL快而且轻但不支持对象界面。

  使用RDO的一般方法如下。

  先声明变量:

  PublicconAsrdoConnection,resAsrdoResultset

  然后初始化rdoEngine,设置用户和口令等缺省参数;WithrdoEngine

  .rdoDefaultUser="sa"注释:用户为sa

  .rdoDefaultPassword="pass"注释:口令为pass

  .rdoDefaultCursorDriver=rdUseServer

  .rdoDefaultLoginTimeout=15

  EndWith

  再连接到要访问的远程数据库(可使用DSNConnection和DSN-LessConnection)。

  使用DSNConnection举例(连接服务器SERVER上的数据库hotel):

  Setcon=rdoEnvironments(0).OpenConnection

  ("hotel",rdDriverNoPrompt,False)

  使用DSN-LessConnection举例(连接服务器SERVER上的数据库hotel):

  Setcon=rdoEnvironments(0).OpenConnection

  ("",rdDriverNoPrompt,False,_"driver={SQLServer};server=SERVER;database=hotel")

  建立连接后,既可使用OpenResultset方法执行查询并处理结果集,又可使用Execute方法执行包括数据定义和数据操作在内的动作查询。例如:

  Setres=con.OpenResultset("SELECT*FROMmenu",rdOpenStatic)

  con.Execute"CREATEVIEWmenu_viewASSELECT代码,菜名FROMmenu",rdExecDirect

  RDO最强大和最重要的特性之一是:它可以查询和处理由存储过程返回的结果,无论它有多么复杂。

  除RDO外,还可使用RDC访问远程数据库。

  远程数据控件(RDC)与数据控件(DC)类似,不同之处是RDC使用RDO连接到ODBC驱动程序管理器,而DC则使用DAO连接到Jet数据库引擎。利用RDO和RDC,无需使用Jet引擎就可以访问ODBC数据源。这样,在访问远程数据库时,可以获得更好的性能和更大的灵活性。

  远程数据控件MSRDC使用举例如下。

  Connect:driver={SQLServer};server=SERVER;database=hotel

  DataSourceName:

  SQL:SELECT*FROMmenu

  UserName:sa

  Password:pass

  CursorDriver:3-rdUseClient

  可以使用RDC执行许多简单的远程数据访问操作,不需编写任何代码,只要填写有关项就可以了,使用起来很方便。但应注意,除非在设计时禁止并只在需要时启动RDC,否则它至少将消耗一个远程数据库连接。在远程数据库连接资源有限或要求很高效的情况下,宜慎用、少用RDC。这种情况下,应尽可能考虑使用RDO,并使用存储过程(预编译好的SQL语句)。

  最后还应注意,只有32位操作系统(如WindowsNT或Windows95),才能支持RDO和RDC。RDO和RDC也只能用于访问32位ODBC数据源。

  • 上一篇资讯: 鼠标编程小技巧二则
  • 下一篇资讯: 在VB中调用HTMLHELP文件
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号