说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

用VB和RDO访问SQL Server

HTML文档下载 WORD文档下载 PDF文档下载
用VB和RDO访问SQL Server

远程数据对象 (Remote Data Object ,简称RDO) 是位于 ODBC API
之上的一个对象模型薄层,它依赖 ODBC API、选定的 ODBC 驱动程序以及
后端数据库引擎实现大部分的智能和功能,因此短小(大约250 K)、快速
、强健。RDO具备基本的ODBC处理方法,所以可以直接执行大多数ODBC API
函数。RDO包含在VB4.0/VB5.0企业版中,由一个动态连接库MS RDO32.DLL
实现。 当VB版本还只是2.0时,从VB访问MS SQL Server的手段只有API函
数集(VBSQL/DBLib或 ODBC API)。VB发展到3.0时,其DAO/Jet (Microsoft
Access的数据库引擎)功能非凡,具备面向对象的程序接口,但处理速度尚不
尽如人意。另一方面,尽管VBSQL/DBLib、ODBC API在速度方面性能很好,但
它需要花费很大的精力进行繁琐的编程工作。
当MS SQL Server发展到6.0、VB发展到4.0时,开发了新的对象模块,由此产
生了RDO,可以访问SQL Server、Oracle;RDO2.0则是由VB5.0提供的。值得
一提的是,它实现了“事件驱动型数据库访问的编程方式”。
要讨论RDO,就必然要谈到DAO。DAO/Jet是为了实现从VB访问Access数据库而
开发的程序接口(对象)。RDO是从DAO派生出来的,但两者很大的不同在于
其数据库模式。DAO是针对[记录(Records)]和[字段(Fields)],而RDO是作为
[行(Rows)]和[列(Columns)]来处理。也就是说DAO是ISAM模式,RDO是关系模
式。此外DAO是访问Access的Jet引擎(Jet是ISAM)的接口,而RDO则是访问
ODBC的接口。
可见,RDO是综合了DAO/Jet、VBSQL/DBLib以及ODBC的优点的对象(Object)。
需要强调的是,RDO是包裹着ODBC
API的一层薄薄的外壳,被设计成在后台(服务器端)有数据库存在的前提下
运行,同时也是针对SQL Server和Oracle而特别设计的。
RDO的优势在于它完全被集成在VB之中。此外,直接访问SQL Server存储过程
、完全支持TQL、TQL调试集成在开发环境中、Visual Database Tools的
集成化等,也是RDO的长处。

RDO之后是ADO

Microsoft公司已宣布今后不会对VBSQL/DBLib进行升级,而ODBC
API函数一级的编程方式也不为人们所喜爱。RDO自身今后将被以ActiveX技术
为基础的ADO(ActiveX Data O bjects)所替代。Visual
Basic下一个版本中由哪一个作为标准配置还不很明确,但这一发展趋势已经
很清楚。 为什么需要ADO呢?RDO是以ODBC为基础,而ADO则是基于全新的OLE
DB技术。ODBC本身是以SQL Server、Oracle等关系数据库作为访问对象;OLE
DB则不仅限于此,而将是可以对电子邮件、文本文件、复合文件、数据表等各
种各样的数据通过统一的接口进行存取的技术。DAO、RDO当然不会一下子消
失,但随着新技术的利用,它们的作用将逐步淡化。

RDO的对象模块图

要正确地使用RDO,有必要对其对象模块结构加以理解。在RDO的对象和集合
中,有很多对数据库的状态和设定进行操作的属性(Property),以及对数据
库进行操作的方法(Method)。利用这些,从RDO2.0起就可以开发事件驱动的
数据库应用程序。
RDO对象与VB中其他对象的概念相同。与VB用的ActiveX控件(以往称为
Custom Control或OCX、VBX)相似的是,RDO也带有属性和方法;但同
Spread、InputMan等普遍应用的ActiveX控件不同的是,RDO没有自己的用户界
面,因而可以和VB标准的Timer控件归为同一类。当然也可以将RDO看作调用
ODBC API函数,进而对后台数据库操作加以控制的对象。在RDO的属性和方法
中,? 对单个的ODBC API函数以及一连串API函数的调用。

1. rdoEngine对象
最初调用RDO对象以及RDC(远程数据控件)时,自动生成rdoEngine对象的附
带事件(incident)。rdoEngine用于对RDO全局属性的参数、选项进行设置,
是在RDO的阶层结构内处于最上层的对象,包含了所有的其他对象。
rdoEngine对象与DAO/Jet不同,虽然被多个应用程序共享,但体现rdoEngine
对象的设定值的属性却并不共用,而是在各自的应用程序的程序界面中对其分
别加以设定。这些设定值对其他使用RDO以及RDC的应用程序没有任何影响。
rdoEngine不是集合的要素,而是重新定义的对象,rdoEngine对象不能被追加
作成。

2. rdoEnvironment对象
RDO对象在自动创建rdoEngine对象时,将rdoEnviroment对象的初始值生
成并保存为rdo
Enviroments(0)。一般情况下,应用程序中不必追加rdoEnvironment对象
,大多只需对已有的rdoEnviroments(0)进行操作就可以了。只有在支持
一个以上事务(Transaction),需要将用户名和口令信息分别处理的情况
下,利用rdoCreateEnvironment方法将特定的用户名和口令值作成新的
rdoEnvironment对象。在这个方法中可以指定固有名、用户名和口令,如
果所指定的值与rdoEnvironments集合的已经存在的成员名称相同,会产
生错误。新建的rdoEnvironment对象自动追加在rdoEnvironments集合的
最后。调用rdoCreateEnvironment方法时,其name参数可以是长度为0的
文字列,这时新的rdoEnvironment对象将不会被追加在rdoEnvi
ronments集合之中。
3.rdoConnection对象 rdoConnection对象用于同SQL Server的连接管理
,下面是与SQL Server连接的例子。
第一步用New关键字声明一个rdoConnection对象: Dim Cn as New
rdoConnection
由此生成独立连接对象,这时它还不是rdoConnection集合的成员。在
具体连接到SQL Server等之前,有必要设定rdoConnection集合的属性
。对此,使用With关键字编程效率会更好。
With CN
.Connect = “Uid = ; Pwd = ; Database = Pubs; DSN = MyPubsDSN;

' 设定Cursor类型
.CursorDriver = rdUseNone
'设定登录超时
.LoginTimeOut = 10 End With

用RDO与SQL Server连接和断开

RDO接口没有自动管理同SQL
Server的连接和断开的功能,需由程序员自己加以判断。这里需要注意的
是对连接和断开时机的管理,因为同时有过多的连接将会造成服务器负
载过重。而且,对SQLServer而言,一个连接只能同时支持一个操作,当
同时进行记录的读出和更新时,需要分别对其各自的连接加以确认。在
一定条件下需要保持连接;反之,当操作完成以后,又需要立即将连接
断开。如果能正确地设计好连接和断开的时刻,就有可能确保扩展更多
的用户数(客户/服务器开发环境中,与数据库项的可扩展性一样,客户
数扩张的可能性
IndieBros访谈:探寻《2+18+200万》背后的故事 移动周报:生存还是毁灭 HTML5未来路在何方? 开发者的新机遇:微软生态系统打开开源大门 阻碍创新:谷歌、Facebook请求驳回抽象专利概念 Apple专利战分析:战火不停 创新不止 史上最牛独立开发者:花20美元狂赚100万美元 Twitter VS. Instagram:照片分享大战爆发 第二届“龙芯杯”中国开源软件设计大赛圆满落幕 TUP Masters第六期实录:Jeffrey Richter讲解Win8应用开发与.NET4.5 [简讯]Bootstrap 2.2.2发布 官博宣布新特性 我们正处于API的黄金时代吗? 敏捷开发的26条至理名言 12月10日:1815年首位程序员Augusta Ada出生 TOP30+应用排行榜:十一月国内外综合榜单 抱大腿:Square礼品卡服务进驻Passbook 科技创新剑指开源产业 “龙芯杯”破题自主研发 25GPU的Linux集群6小时内破解标准Windows密码 Lady Gaga与大数据的“火花” 手势才是王道:3款应用捕获3个设计灵感 YouTube的挑战者 JustinTV教你如何打造实时视频网站 黑客挟持160万用户密码 抗议联合国监管互联网 Twitter面对危机火速上线照片滤镜产品 Nike推创业孵化器:每个参与团队获2万美金 傲游发布云浏览器 支持跨终端数据同步 12个git实战建议和技巧 用友UAP产品线总设计师史周军访谈录 IE10新功能解析 支持Media Query(图) 单页Web应用或引领下一代Web新趋势? [CTO俱乐部第89期]新时代的前端开发 [多图]160台Mac mini打造的数据中心机架 是谁动了我的CPU! 关于c/s的问题 如何用evb显示tip呢? 数据环境设计器怎么样去用? 文档保存时隐藏某一域的ls如何写? 视频点播怎么做啊?用什么服务器好?自己做收看WEB页怎么办啊? 怎样才能输出正确的书名号 ADO调用数据源,如何实现相对路径? 请问怎么让一个MDI子窗体永远保持非最大化并且在所有子窗体最后 一个简单的问题,看哪位兄弟可以解决 EDIT MASK的问题,在线等待。。。 关于winamp skins的问题 atmel的c51单片机是多少钱啊 怎样在程序启动时判断已经有一个程序副本正在执行? 求教:关于VC书籍 想从98升级到2K,如何实现? 高分寻找sqlserver2000的ppt文档!!!(不够再加) 调用MoveMemory,提示内存只读!急,在线等待! 高手请进,我自会给高分!!! 请教高手,谁会用BCB中的implib和tlib工具? 高分寻找sqlserver2000的ppt文档!!!(不够再加) 初学BC,提两个简单的问题 linux下无法播放mp3 sco opensever5是什么东东?有人在用吗? 以下代码有问题?请指教 MySql数据库的稳定性值得怀疑! 请问哪里有ADO2.6下载??? 在做报表时,由于太多的内容,导致不能完全打印,请问怎么解决??(急急!!) 在WINDOWS98平台上使用PB能不能联到SQL SERVER数据库服务器上?如能如何联接? 如何实现新建文件(菜鸟)(在线等待) 获取DATAGRID中的更新列的数据发现只能得到更新前的数据 求一SQL 语句 急求VSFlexGrid8.0或者VSFlexGrid For .NET的下载地址! 对于动态创建窗口(而不是控件),有没有类似 WithEvents 的东西 如何把Excel公式表达式转化为ptg标记? applet的打印问题 現在有asp源代碼﹐怎麼得到session? 求助!!我想学一门语言 好像vc中的工具栏只能是16像素高吗?如何使得工具栏的高度可以超过16像素,在那里设置呀? 菜鸟问一个操作数据库经验方面的问题,希望大家能提提你们的经验,谢谢~~~``` bcb的精华区为何访问不了?? 如何判断字段是否为字符型? 为什么Boolean.getBoolean("true")的结果是false????? 一个简单的触发器问题,请大家帮忙。 图片保存和打印问题 请问,我可不可以将IPicture->Render()函数,输出到内存中?如何做呢? 高版本的数据可以导入低版本吗? 如何知道信使服务来自何方?? 时间的加减? 怎样用电话线实现两台机器的互联,系统都是98 如何用mfc来实现一个com组件?最好有源码! 100 分求教数据表中字符串匹配问题!!!!!!!!!! 分子结构中含有多羟基的结构物质有那些?知道抗坏血酸!可价格貌似挺高,有没有便宜点的? 我们学过的四种基本尺规作图分别是什么? 哪个国家的物产居唐朝进口首位? 下图所示装置中,直流电源用的是甲烷燃料电池,甲乙丙三个烧杯分别是盛放200g10%的NaOH溶液、足量的CuSO4溶液、足量的K2SO4溶液,电极均为石墨电极.接通电源后.经过一段时间后,测的乙中c电极 在误差允许范围尺规作图近似三等分任意角有意义吗没有刻度的尺子 理论上不能精确平分 实际上误差可在一度以内 我用二分法无限接近 mind every step 含羟基固体物质有哪些 我们为什么要学习新闻?学习它有什么好处?其意义是什么? 梁祝都分几部我就光知道到化碟,记得还有两部,想听听全版的,谁那有呀 最好是古筝独奏 我搜了,没找到 小明同学在一只矿泉水凭内装入密度为p的某种液体,液面距瓶底高H,求在距瓶第四分之一处液替产 尺规作图垂直平分线为什么要大于二分之一半径 梁山伯与祝英台总结将剧情缩短,写出重要部分,总数在200字左右,让人看了马上知道故事的内容. 苯甲酸中的羟基氢原子被氨基取代后的物质具有怎样的性质从氨基这个角度来说,应该还具有怎样的性质呢 1p是几页纸 想请英语高手帮忙做一下这个阅读理解可以吗.谢谢五、阅读理解It was half-past eight in the morning.The telephone bell rang and Mary went to answer it. "It'sme-Peter." "Hello, who's that?"she asked. Peter was a friend of Mar 盛放NaOH溶液的试剂瓶口部,时间长了会有白色固体附着,这固体的成分是 B.Na2CO3 为什么? 【两道题的关系图怎么画?(1p为例图)】 ⒈甲骑摩托车、乙骑自行车同时从相距250km的A、B两地【两道题的关系图怎么画?(1p为例图)】⒈甲骑摩托车、乙骑自行车同时从相距250km的A、B两地 有一首歌是唱梁山伯与祝英台的有一句词是这样的“如果我是梁山伯 一定会放过祝英台 让她和别人去相爱 生个漂亮的小孩” 尺规作图 什么情况下在原图作图像角平分线这样的可以在原图作图吗 如何分析两组数据的相关性一组是收入水平ABCD四个选项,另一组是认知度也是ABCD四个选项.如何得到收入高低和认知情况的相关性? 数学奥赛题,要有算式,题是:一家服装公司的A,B两个制衣车间,生产同一种款式的...数学奥赛题,要有算式,题是:一家服装公司的A,B两个制衣车间,生产同一种款式的西服,A车间每月可生产这种 已知∠a,线段a,求作:RT△ABC,使∠B=90°,∠C=∠a,AC=a(做法图片都要)! 概念画是什么 某服装公司共有190人,织布工人每月工资为900元制衣工人每人月工资为1200元,公司每月付给工人工资共计21.6万元.问:(1)若织布工人每人每天织布60m,制衣工人要用织出的布生产a、b两种服装, 一个炭上能连一个氢两个羟基 一个氨基么? 生日贺卡上画什么最有意义? 数学奥赛题,题是:一家服装公司的A,B两个制衣车间,生产同一种款式的西服,A车间每月...数学奥赛题,题是:一家服装公司的A,B两个制衣车间,生产同一种款式的西服,A车间每月可生产这种西服60 求There be 句型中to do和to be done 的区别-_-# 看两句纸.There is nothing to do.There is none to be had.什么时候用被动语态好呢?nothing也不会自己do的. 梁山伯和祝英台是一个朝代的吗? 梦见窗外有彩虹,由于梦到的是在屋子里往窗外看,看到天空中有彩虹, 山地车能否换成公路车大小的牙盘 请能告诉我,这画的含义吗?请具体讲解一下吗? 剃须刀由刀片和刀架组成,某时期,甲,乙两厂家分别生产老式剃须刀【刀片不可更换】和新式剃须刀【刀片可更换】,有关销售策略与售价信息如下:老式剃须刀售价2.5元一把,成本2元一把,新式 我有一个类似正方体的金属块,呈黄色,像铜,但是特别挺重的.我用称测量了一下,大概8两重,应该是400g吧?然后3个面分别是4厘米,4厘米和4,2厘米.我想请问,它到底是什么材质的?有可能含金吗?上 我家的狗狗 600字作文小狗的600字的作文 什么是频率稳定度 所谓的dd迁跃是什么东西,为什么铜离子会是黄色的 晶体振荡器震荡不需要电源么 什么是频率的稳定性频率具有什么样的稳定性 为什么叫管IG的姿态叫MC姿态,什么含义? 双氧水烧手了,怎么办?大拇指,指尖变白了,不过不疼30% 化工用双氧水医用为 30% 已知三角形ABC中,角ABC=角ACB,P为BC延长线上一点,PD垂直AB于D,PE垂直AC于E,BH垂直AC于H.已知三角形ABC中,角ABC=角ACB,P为BC延长线上一点,PD垂直AB于D,PE垂直AC于E,BH垂直AC于H,试探究线段PD、PE、BH的数量 哪个人物移动速度最快 为什么在做双氧水加Mno2的实验时,手不小心被双氧水溅到,结果手变白了? 一束光线能不能分成很细的许多光线.比如手电筒的光线能不能分成几百万束光线,这些束光线彼此有极小距离希望说得详细点.感觉好的话追加分. 不怕~也不怕造句 人物的基本移动速度是 多少米每秒?有知道的大仙告诉下哈~ 如何将32768Hz的石英晶体振荡器分频为1分钟的信号?也就是1/60Hz的信号? 求延拓定理内容 体积为0.72立方米等于多少立方厘米 铅酸蓄电池漏液会造成什么后果?机房ups用的蓄电池12V的 下图所示装置中,甲、乙、丙三个烧杯依次分别盛放100g5.00%的NaOH溶液、足量的CuSO4溶液和100g10.00%的K2SO4溶液,电极均为石墨电极接通电源,测得丙中K2SO4浓度为10.47%,乙中c电极质量增加.据此回答 PS CS4 为什么选择椭圆工具-路径 画了一个圆 想在圆的内壁上输入文字 怎么结果老在圆的外壁上输入了呢 螺线管不闭合,若穿过螺线管的磁通量发生变化,则什么一定产生? 为什么多羟基物质能溶解氢氧化铜? 梁山伯和祝英台到底是不是一个朝代的同学?梁山伯和祝英台是一个朝代的同学么? 墨西哥的需要进口物产是什么 甲、乙、丙三个烧杯依次分别盛放100g5.00%的NaOH溶液、足量的CuSO4溶液和100g10.00%的K2SO4溶液电极均为石墨电极接通电源,测得丙中K2SO4浓度为10.47%,乙中c电极质量增加.据此回答问题:列式计算电 梁山伯与祝英台是同一时期的吗? 俄罗斯需要进口的物产 叙利亚当局表明愿无条件参加叙问题国际留祥路本月起改叫石祥西路 路牌错了破男硕士年薪5万月花400 穿旧衣相亲男子为救假装落水儿童瘫痪 28年后获美国六大互联网巨头致信国会要求改革监自称21岁大学生 40岁男子男扮女装中央第八巡视组组长:着力发现选人用人杭州13岁姑娘失踪5天 在社会上结识快递哥邱师傅倒在送货路上 同行前去凭绍兴印染温州电镀两个“污染大户”转型温州双岙村遭垃圾围堵 焚烧垃圾引消防爱心的哥贵师傅往返江山衢州送尿毒症患思鑫坊曾是杭城近代建筑代表 如今成无空气污染致癌 波兰向碳排放开刀法缩短我公民办理赴法旅游签证时间“美丽中国”大型图片展在莫斯科举行解决伊核问题需要信任和耐心智利沿海发生6.6级地震 圣地亚哥房尼日尔移民车沙漠抛锚 致90人脱水而人民币设计者:女拖拉机手不是“人民币武警战士吐槽办证难:户口20多年没办河北超六成房地产开发项目违法高考评卷信息将保存3年百个地级市 医院怎么改(民生三问·会中国成为俄罗斯入境游最大客源国大学生村官考核称职 政府可代偿助学贷微昭通政务微信吸“铁粉”(政务新媒说风暴过后突尼斯袭击事件致19人死亡习主席特使杨传堂将出席纳总统就职仪式图片新闻亲情解乡愁 文化助外交祛除浮躁顽疾 脚踏实地创作(金台论道人民日报点赞素颜艺考:本就该摆脱功利依法纠正10件重大冤假错案赴台个人游再增11城打击盗窃电力设施“硕鼠”隋唐洛阳城应天门遗址概念性展示方案出缅怀历史用法治管住地方“任性发债”(人民时评哲学的魅力(大家手笔)如何更好地培养免费师范生(凭栏处)
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘