电信主站 网通分站
购买流程 付款方式 常见问题 在线提问 续租服务 购物车
用户名: 密 码: 忘记密码?
首 页
域名注册
虚拟主机
双线主机
服务器租用
VPS主机
企业邮局
代理专区
客服中心
虚拟主机行业资讯 虚拟主机评测对比 互联网最新动态 技术学院 站长资讯 在线教程 网站运营
搜索优化 服务器 网络编程 图形图象 站长之家 网页制作 操作系统
冲浪宝典 软件教学 视频通信 办公软件 邮件系统 网络安全 认证考试
您当前位置:西部数码->资讯中心-> 操作系统-> Linux教程
vb中远程数据库的访问(3)-应用举例_visualbasic教程
作者:网友供稿 点击:0
  西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!虚拟主机可在线rar解压,自动数据恢复设置虚拟目录等.虚拟主机免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金!
文章页数:[1] 
三、应用举例

  以上介绍了用dao访问远程数据库的具体操作,下面通过一个例子说明链接远程表和建立记录集对象的方法。

  首先建立一个新工程,在窗体上画5个命令按钮,1个数据控件和1个数据网格控件(dbgrid)。各对象的属性设置见表1。

表1窗体1对象属性设置
-align="middle"width="33">对象->-align="middle"width="33">标题(caption)->-align="middle"width="34">名称(name)->-width="33">窗体->-width="33">远程数据访问->-width="34">form1->-width="33">命令按钮1->-width="33">链接远程表->-width="34">cmdlink->-width="33">命令按钮2->-width="33">添加->-width="34">cmdadd->-width="33">命令按钮3->-width="33">删除->-width="34">cmddel->-width="33">命令按钮4->-width="33">修改->-width="34">cmdmodify->-width="33">命令按钮5->-width="33">结束->-width="34">cmdend->-width="33">数据控件->-width="33">->-width="34">data1->-width="33">数据网格->-width="33">->-width="34">dbgrid1->

其中dbgrid1中的datasource属性设为data1,命令按钮2,3,4的visible属性设为false。

三、应用举例

编写如下事件过程:

privatesubcmdadd_click()添加记录子过程

onerrorgotoerrhandler

withrst

.addnew

fori=0to.fields.count-1遍历记录集中的每个字段

在输入框中输入各字段的数据

.fields(i).value=inputbox

("输入记录信息"&vbcr "字段名:" .fields(i).name)

nexti

.update

endwith

data1.refresh

dbgrid1.rebind

errhandler:错误处理

selectcaseerr

case3022,3421

msgbox(error vbcr "输入无效")

exitsub

caseelse

response=0

exitsub

endselect

endsub

privatesubcmddel_click()删除记录过程

onerrorgotoerrhandler

begintrans事务处理

withdata1.recordset

if.bofand.eofthenexitsub

如果没有记录,退出过程

.delete删除

if.bofand.eofthen

如果没有记录,退出过程

exitsub

elseif.eofthen.movelast

如果删除的是最后一条记录,光标移至最后一记录

else:.movenext

移至下一条记录

endif

endwith

ifmsgbox("确实要删除这一记录?",

vbquestion vbyesno)=vbyesthen

committrans确认

data1.refresh

else

rollback撤消改动

data1.refresh

endif

errhandler:错误处理

selectcaseerr

case3021无当前记录

msgbox("无当前记录,请选择要删除的记录")

exitsub

caseelse

msgbox(error)

exitsub

endselect

endsub

privatesubcmdend_click()

end结束应用程序

endsub

privatesubcmdmodify_click()

dbgrid1.allowupdate=true允许修改

endsub

privatevsubcmdlink_click()

form1.hide

form2.show

endsub

privatesubdbgrid1_aftercolupdate(byvalcolindexasinteger)

数据修改后触发该事件

onerrorgotoerr1

data1.refresh

err1:

selectcaseerr

case0

response=0

caseelse

exitsub

endselect

endsub

privatesubdbgrid1_beforecolupdate

(byvalcolindexasinteger,oldvalueasvariant,cancelasinteger)

数据修改前触发该事件

onerrorgotoerrhandler:

begintrans

ifmsgbox("确实要修改这一内容?",vbquestion vbyesno)=vbyesthen

committrans

else

rollback

data1.refresh

endif

errhandler:

selectcaseerr

case0

response=0

caseelse

msgbox(error)

exitsub

endselect

endsub

privatesubform_load()

在窗体装入时,网格中的数据不可添加,修改

dbgrid1.allowaddnew=false

dbgrid1.allowupdate=false

endsub

privatesubform_resize()

onerrorresumenext

当窗体调整时会调整网格

dbgrid1.height=me.scaleheight-data1.height-cmddel.height-30

endsub

在工程中添加一个窗体,在窗体上画6个标签,1个命令按钮(标题为“确认”,名称为cmd确认),3个文本框和1个组合框。

在窗体的声明部份输入以下代码:

声明窗体层变量

dimrodbsasdatabase

dimstrdbasstring,strrodbasstring,strcnasstring,strtdfasstring

dimlinktdfnameasstring

编写如下事件过程:

privatesubcmdOK_click()

onerrorgotoerrhandler:

strdb=text2.text

本地数据库名及路径

linktdfname=text3.text

本地数据库中新建的链接远程表的表名

strcn=strrodb连接字符串

strtdf=combo1.text指定远程数据库中要访问的表

调用linktable过程

calllinktable(strdb,strrodb,strcn,strtdf,linktdfname)

调用rst_display过程

callrst_display(strdb,linktdfname,form1)

form2.hide

form1.show

form1.caption="远程数据:" strcn "-" strtdf

显示“添加”,“删除”,“修改”控件

form1.cmdadd.visible=true

form1.cmddel.visible=true

form1.cmdmodify.visible=true

errhandler:

selectcaseerr

case0

response=0

caseelse

msgbox(error vbr "重新输入")

exitsub

endselect

endsub

privatesubcombo1_gotfocus()

strrodb=text1.text指定远程数据库名及路径

setrodbs=opendatabase(strrodb)打开远程数据库

删除combo1中的内容

ifcombo1.listcount>=1then

fori=combo1.listcount-1to0step-1

combo1.removeitemi

nexti

endif

把数据库中的表名加到combo1中

fori=0torodbs.tabledefs.count-1

combo1.additemrodbs.tabledefs(i).name

nexti

endsub

->


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!
相关主题
文章页数:[1] 
Google
热门文章
·三维修改命令_autocad教程
·用rsync修复不完整的linux光盘映像文件_linux教程
·linux中文件内容查看工具的使用介绍_linux教程
·photoshop自制黄金材质贴图_photoshop教程
·使用 dataadapter 执行批量更新_ado.net应用
·xslt的简单使用[xml-->html] _xsl教程
·基于linux操作系统架构openvpn总结_linux教程
·linux下硬盘分区的最佳方案_linux教程
·linux下乱码问题的终极解决方法_linux教程
·photoshop教你打造树叶上的露珠_photoshop教程

最新文章
·photoshop制作重彩风格非主流照片效果_photoshop教程
·linux操作系统上摄像头的使用小技巧_linux教程
·介绍linux操作系统上摄像头的使用小技巧_linux教程
·linux攻略 dns服务器安装配置方法详细介绍_linux教程
·详细讲解linux系统下adsl拨号上网方法_linux教程
·ubuntu6.0.6下的apache2+php5+mysql配置的一些问题_linux教程
·在linux桌面上 随意使用windows的文档_linux教程
·ubuntu 7.04 桌面服务器配置_linux教程
·在linux系统下优化oracle具体步骤_linux教程
·linux学习(远程控制跟ip地址配置)_linux教程


 
 


版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!

特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
  打印  刷新  关闭
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 虚拟主机 | 资讯中心 | 友情链接 | 网站地图

版权所有 西部数码(www.west263.com)
CopyRight (c) 2002~2006 west263.com all right reserved.
公司地址:四川成都市万和路90号天象大厦4楼 邮编:610031
电话总机:028-86262244 86263048 86263408 86263960 86264018 86267838
售前咨询:总机转201 202 203 204 206 208
售后服务:总机转211 212 213 214
财务咨询:总机转224 223 传真:028-86264041 财务QQ:点击发送消息给对方635483282
售前咨询QQ:点击发送消息给对方2182518 点击发送消息给对方241975952 点击发送消息给对方275026793 点击发送消息给对方408235859
售后服务QQ:点击发送消息给对方17708515 点击发送消息给对方307742704 点击发送消息给对方287976517 点击发送消息给对方363783715
《中华人民共和国增值电信业务经营许可证》编号:川B2-20030065号