VB&数据库交互——经典五实例整理知识点

8 篇文章 0 订阅

  1On  Error   语句        (启动一个错误处理程序并指定该子程序在一个过程中的位置;也可用来禁止一个错误处理程序。)

如果不使用   On   Error   语句,则任何运行时错误都是致命的;也就是说,结果会导致显示错误信息并中止运行。

注意 一个错误处理程序不是 Sub过程或 Function过程。它是一段用行标签或行号标记的代码。

语法

On   Error   GoTo   line  

On   Error   Resume   Next

On   Error   GoTo   0

On   Error   语句的语法可以具有以下任何一种形式:

语句   描述  

On   Error   GoTo   line     启动错误处理程序,且该例程从必要的   line   参数中指定的   line   开始。line   参数可以是任何行标签或行号。如果发生一个运行时错误,则控件会跳到   line,激活错误处理程序。指定的   line   必须在一个过程中,这个过程与   On   Error   语句相同;   否则会发生编译时间错误。  

On   Error   Resume   Next   说明当一个运行时错误发生时,控件转到紧接着发生错误的语句之后的语句,并在此继续运行。访问对象时要使用这种形式而不使用   On   Error   GoTo。  

On   Error   GoTo   0   禁止当前过程中任何已启动的错误处理程序。 

在实例1中,遇到的On  Error GoTo           指程序运行出错时跳转(并能找出错误的类型和编号使人能方便地分析或可以使我们的程序更加的结构化出错时进入专门的错误处理程序)

源文档 <http://topic.csdn.net/t/20030330/12/1595069.html>

2、游标的属性

1、 AdOpenForwardOnly (默认值)一次只能向前移动一行。

2、 AdOpenKeyset 打开键集类型游标。

3、 AdOpenDynamic 打开动态类型游标

4、 AdOpenStatic 打开静态类型游标。

具体的AdOpenForwardOnlyAdOpenStatic这两种游标使得记录集只读,它表示创建数据的一个快照。后者比前者灵活,因为它可以允许任意方向移动。

AdOpenKeyset允许任意移动,并且允许更改记录集。其他用户对记录集的添加和删除,这个游标反映不出来。但它能反映出其他用户对记录集的更改。

AdOpenDynamic允许所有操作,其他用户对记录集的添加、删除、更改在此记录集中

都是可见的。

AdLockReadOnly (默认值)只读 --- 不能改变数据。

AdLockPessimistic 悲观锁(逐个)--- 为确保成功完成编辑记录所需的工作,

在编辑时立即锁定数据源的记录。

AdLockOptimistic 乐观锁(逐个)--- 只在调用Update 方法时才锁定记录。

AdLockBatchOptimistic 乐观批更新---用于批更新模式(与立即更新模式相对)。

源文档 <http://hi.baidu.com/jhpjszy/item/4f42e443a8966596833ae1d2>

3DefinedSizeActualSize的区别

DefinedSize 属性会返回一个 long 值,该值指示一个字段被定义的长度(字节)。

ActualSize 属性是一个只读属性。它会返回一个 long 值,该值指示某个字段的值的实际长度。如果 ADO 无法确定该 Field 对象的值的长度,则返回 adUnknown。

使用 DefinedSize 属性可确定 Field 对象的数据容量,而 ActualSize 则表明其实际长度。 

源文档 <http://www.w3school.com.cn/ado/prop_field_size.asp>

4什么是字段、记录和值?

在数据库中,对表的行和列都有特殊的叫法,每一列叫做一个“字段”。每个字段包含某一专题的信息。就像“通讯录”数据库中,“姓名”、“联系电话”这些都是表中所有行共有的属性,所以把这些列称为“姓名”字段和“联系电话”字段。

我们把表中的每一行叫做一个“记录”,每一个记录包含这行中的所有信息,就像在通讯录数据库中某个人全部的信息,但记录在数据库中并没有专门的记录名,常常用它所在的行数表示这是第几个记录。

在数据库中存放在表行列交叉处的数据叫做“”,它是数据库中最基本的存储单元,它的位置要由这个表中的记录和字段来定义。在通讯录的表中就可以看到第一个记录与“单位”字段交叉处的值就是“中国人民银行上海分行”。“王岚”所在的记录和“电话”的这个字段交叉位置上的“值”就是“0551-7238321”。

源文档 <http://zhidao.baidu.com/question/4332840.html>

举例:

5objDataSource!用户名=objRs用户名  ???

在Visual Basic中,惊叹号“!”与圆点“.”都用于给对象命名,但两者语法上却存在很大的区别,这点在编程时尤其需要注意。

圆点操作符“.”用来表示对象的属性和方法,在引用时,需要用到对象的Name、圆点和需要的属性或方法。例如要引用文本框Textl中的文本属性时可用reponse$=Text1.Text,再如要改变Form1窗体返回或读取对象高度的单位时用Form1.ScaleHeigh=2000表示。

感叹号“!”常用于当一个控件作为一个特性访问的情况下,例如引用Fomr2中Text1文本框文本属性时,可采用response$=Form2!text1.text语法格式。

虽然两者的语法应用结构有较大差异,但两条语句的性能是相同的,值得注意的是如果你在感叹号“!”的位置使用“.”可以获得对窗体上Text1特性的直接访问权

为了进一步增加感性认识,你不妨运行下面的例子来试试:

1.建立一个新项目,并在Form1窗体中增加一个命令控件。

2.双击Form1窗体,编辑Form-Load事件并输入:

Form1!Command1.Caption=”Text”

Form1.Command1.Caption=”It Works”

3.运行试项目,这时你就会在Command1命令框中看到字符串It Works。

为了在程序中清楚地界定引用的控件名和该控件的属性或方法,增加程序的可读性,最好使用感叹号“!”,这也是VB的推荐方式。

源文档 <http://www.accessoft.com/article-show.asp?id=1811>

6、0""(空字串)NullEmpty、与 Nothing 的区别

先回答以下问题吧! 经过以下的叙述之后, 变量 A、B、C、D 分别等于 0、""、Null、 Empty、 Nothing 的哪一个?

Dim A

Dim B As String

Dim C As Integer

Dim D As Object

A 等于 Empty, 因为尚未初始化的「不定型变量」都等于 Empty。但如果检测 A = "" 或 A = 0, 也都可以得到 True 值。

B 等于 "", 因为尚未初始化的非固定长度「字串」都等于 "" 。 但请注意 B<> Null。

C 等于 0, 这个还有问题吗?

D 等于 Nothing, 尚未设定有物件的「物件变量」都等于 Nothing, 但请不要使用 D = Nothing , 而要使用 D Is Nothing 来判断 D 是否等于 Nothing, 因为判断 是否相等的符号是 Is 不是 = 。

最令人迷惑的地方是 Null 这个保留字, 请看以下语句:

Print X = Null

Print X <> Null

结果都是输出 Null(不是 True 也不是 False), 这是因为任何一个运算式只要含有 Null , 则该运算式就等于 Null, 实际上想要判断某一数据是否为 Null 绝对不能使用:

If X = Null Then \' 永远都会得到 Null

而要使用:

If IsNull(X) Then

哪一种数据会等于 Null 呢? 除了含有 Null 运算式之外, 就属没有输入任何数据的「数据字段」(在数据库中) 会等于 Null。

源文档 <http://www.accessoft.com/article-show.asp?id=1811>

7、使用对象编程

对象使用方法:

<1>、(引用)对象的声明  dim 对象名 as new [库名.]类名  (此时为加载,直到第一次使用时才真正的创建)

<2>、dim 对象变量名 =  [库名.]类名

          set 对象变量名=new [库名.]类名  (真正创建)

         new ,创建一个新的实例,实例的引用赋给对象名,即就是新的实例的名字就是此对象名了

例:dim myform2 as form1

表明myform2的类型是Form1,此时myform2还是没有对象与它相对应,再加上set myform2=new form1语句时,才与dim myform2 as new form1 一样

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
VB6.0全称为VisualBasic 6.0,是微软公司推出的可视化编程工具MSDN之一,是目前世界上使用最广泛的程序开发工具。如果你是一个对编程一无所知,而又迫切希望掌握一种快捷实用的编程语言的初学者,那选择VB 6.0没错的。即使考虑到VB程序本身编译和运行效率较低的不足(嘻嘻速度现在不是问题吧),单是它的快捷的开发速度,简单易学的语法,体贴便利的开发环境,它仍不失一款优秀的编程工具,是初学者的首选。   也许你会问,我以前没学过任何一种语言,我能快速上手吗?别担心,没问题VB的语法的和QBASIB语言是基本相同的,也就是说它的语法是最容易被初学者所接受的。另外VB提供的是可视化的开发环境,我们可以象搭积木一样构建出程序的界面,而且VB提供了丰富的控件组,省去了我们自己写代码实现这些效果的麻烦,这样我们就能把更多的精力放在程序功能的实现上,所以VB学起来简单,用起来方便。   接着看看VB语言的前景,在目前各种编程语言共存的时代,VB会不会落伍呢?当然不会了,在我写这篇文章的同时,微软已经透露了VB7.0将完全面向对象的消息,可以肯定下一代VB的功能一定会强大很多,我们这些所谓的 VB 程序员总算可以放心了,VB不会落后于时代,毕竟它是使用人数最多的优秀的开发工具。   好了,侃了这么多关于VB的台前幕后,总之是为想学编程的你树立信心,编程一点都不难,只要你决定了开始,就让我们一起踏上愉快的编程之旅吧。   接下来谈谈怎样学习VB,先说说“看实例VB6.0”系列教程,它是面向编程初学者的VB入门教程,这个教程的特点是抛开晦涩难懂的概念和语法,不做内容上的堆积和罗列,而是采用了每节一个生动有趣的小例子的形式,每个小例子中会涉及到一个或几个VB编程知识点(可能是控件,也许会是某个函数或编程小技巧),使你快速入门。希望你学完此教程后能达到下述的效果:   从对编程一窍不通或从未接触过编程的状态,通过学习能够对VB6.0的编程环境比较熟悉,掌握VB开发界面的使用方法;对VB语言的基本语法大致了解,知道常见的语句的意义;学习VB常用控件的使用方法,并能将它们灵活运用到应用程序中;能开发简单的VB程序。到那时你已经能够继续深入的学习VB编程,可以继续参与到程序设计栏目其他版块的学习中去,嘻嘻,目标就是这样啦。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值