经过一个星期的时间,终于把红皮书敲完了,现在来总结一下通过敲例子新了解到的知识。先奉上一张导图,比较简单,望见谅。
其实红皮书的五个例子都是比较简单的,千万不要被它的外表吓着了,只要按着书上的步骤一步一步来,认真地敲代码,注意中英文,还有一些对象属性等,一个例子下来还是比较容易的。只是我敲的时候太马虎,会出现一些低级错误,自认为自己敲的代码没有错,可是让别人一找就能找出来。
通过这五个例子,我知道了访问数据库有三种方式,分别是:
一、通过运用ADO对象来访问数据库,其中实例1、实例4和实例5都是用这种方法来访问数据库的,不同的是实例1和实例4只运用了ADO.Connection和ADO.Recordset对象,而实例5还增加了一个Command对象。
ADO.Connection对象用于与数据库的连接。
ADO.Recordset对象用于保存获取到的数据源。
ADO.Command对象用于数据的查询。有两种办法:①ADO.Recordset和ADO.Command对象相结合执行查询语句。②用Command对象创建参数查询。
其中要注意在建立ADO对象引用之前要先引用Microsoft Activex Data Objects 2.5 Library
二、使用ADO对象访问ODBC数据源,从而来访问数据库。
这种方法中要先创建ODBC数据源,将ODBC数据源与数据库关联起来,建立ADO对象引用,访问数据源从而间接的访问数据库。
三、使用数据绑定。
数据绑定是将控件与数据源的特定字段关联,在运行时控件可以自动显示数据源数据,修改数据也可以自动保存。这种方法可以不编写代码就实现数据库的访问,也不需要引用Activex控件,比较简单。
使用这个方法有几个步骤:①首先,使用控件创建与数据库的连接。②使用控件的数据绑定特性来显示数据。
接下来,说说我在敲例子中遇到的问题:
第一个例子,总是登录失败 (如下图),让我郁闷了好长时间。
通过调试发现总有一段代码是不执行的,仔细检查了一下代码,发现把Recordset打成了Record,真是马虎!
第二、三、四个例子都挺简单的,按照书上的步骤很顺利的就完成了。
第五个例子,用户名或身份中输入的字段是对的,但是它就是查询不出来。
调试后,又是一段代码不执行,我把这段代码仔细与书本进行了对照,发现代码并没有错。于是我把我的例子在别人的电脑上试了试就可以,所以我重装了VB就解决了。
还有就是我发现查询出来的数据总是从第二行开始显示,第一行总是空着,我从网上看到已经毕业的师哥的博客,发现只要把MSFlexgrid控件中的rows属性设置为1就可以了,而且在每次查询后都只显示本次查询的内容。
MSFlexgrid1.rows = 1