企业板中Visual Basic 的数据库的操作初探

作者: 李秀荣

摘 要:本文探讨了在VB中使用SQL语句建立表和字段的简单方法。

关键词:VB;数据库; Access型数据库; SQL语句

中图分类号:G254 文献标识码:A 文章编号:1006-3315(2010)6-153-001

Visual Basic是目前广泛应用的编程语言,具有易于学和使用、开发效率高等优点。VB同样提供了对数据库技术的支持。作者通过对相关资料进行研究后,得到VB操作数据库的一些基本方法。

VB直接支持的数据库格式为Access型类型,其他类别的数据库视为外来数据库,其次VB是将数据库作为对象进行操作的。在Access数据库中一个数据库文件(*。mdb文件)中包含了若干个表(table),同时包含索引(Index),关系(Relation)备注字段(Memo)等众多内容,也就是说,Access数据库只需一个文件就可以包含多个表,管理起来较为方便。

VB企业版中,一般单用户时的操作比较简单,多用户时的操作非常复杂,其中涉及到数据库、表、索引关系等对象的打开权限、修改权限、记录锁定等问题。下面仅就单用户的操作介绍一下数据库的操作中的一些重要的方法。

一、数据库的建立

⑴数据库文件的建立:

命令如下:

SET数据库对象变量=Createdatabase(数据库文件名,排序时使用的语言代码页常数,版本常数)

例:DIM Mydatabase AS Database’定义一个数据库变量:Mydatabase

SET Mydatabase=Createdatabase(“Mydata.mdb”,dblang-ChineseSimplified,dbVersion30)’建立数据库:Mydata.mdb

这条命令只创建了一个空的数据库。要使用数据库必须在数据库中建立表(Table)。

⑵表和字段的建立

在VB企业版中,提供了使用SQL语句建立表和字段的简单方法,例:

CommonDialog1. ShowOpen

DBname=CommonDialog1 FileName

Set myDatabase =CreateDatabase(DBname, dblangChinese Simplified,dbVersion30)’建立一个数据库文件

myDatabase. Execute“create table 班级情况(班级名称text, 入学年份single,本班人数single);”用SQL语句建立表

索引的建立

可用SQL语句,简单地建立索引。方法如下

数据库对象变量。Execute “Create Index 索引名on表名(字段名):

例:myDatabase.Execute“Create Index tmpIndex on班级情况(班级名称);建立索引

SQL语句是以字符串的形式嵌在VB程序行中的,可以是任何字符串类型的表达式,但应合乎SQL的语法规则。

二、数据库的打开

要操作数据库必须先打开数据库并创建数据库对象,操作表也必须先创建表对象。打开数据库使用Opendatabase方法并同时建立数据库对象,方法如下:

SET数据库对象变量=Opendatabase(数据库文件名,打开方式选项,只读特性,连续特性)

例:CmmonDialog1. ShowOpen

DBname=“”Then Exit Sub’数据库名称不能为空

Set myDatabase=OpenDatabase (DBname)’打开数据库

MsgBox“打开数据库”& DBname &“成功”

打开数据库Mydata.mdb 的同时创建了数据库对象变量Mydatabase.

三、数据库的修改

数据库的修改也就是关系模式的修改,主要是指:①表的添加和删除;②表中字段的添加、修改和删除;③索引的添加和删除。添加的操作就是建立的过程,前面已有说明。下面就各项删除操作进行介绍。删除操作比较简单,只需用Delete 方法,操作如下:

1)删除表

数据库对象变量.Tabledefs. Delete 表名

2)删除字段:

数据库对象变量.Tabledefs. (表名).Delete 字段名

3)删除索引

数据库对象变量. Tabledefs. (表名).Indexes. Delete索引名称。

删除字段和索引时必须注意,只有没有索引和连接关系的字段才能删除,只有没有连接关系的索引才能删除。

四、记录的处理

VB中没有字段变量的概念,对记录的操作是依靠记录集对象(Recordset) 进行的,上述建立的“班级情况”表中,当前记录为第一个记录时,Recordset(0) 代表“班级名称”字段的值,Recordset(1)代表“入学年份”字段的值, Recordset(2)代表“本班人数”字段的值。也可以用Recordset(“班级名称”)表示Recordset(0),用Recordset (“入学年份”)表示Record(1),等等。

移动记录的操作:Movenext(向下移动一条记录)、Moveprevious(向上移动一条记录)。更新记录先采用Edit方法,再设置记录的新值,然后用Update方法进行更新操作。删除记录集时用记录集的Delete方法进行。增加新记录用AddNew方法进行。

VB本身是一种面向对象的语言,在VB中对数据库的操作中允许使用SQL语句,从而简化了某些操作。上述只是一些基本操作。对于更深层的操作,如关系模型完整性的实现,还需进一步探讨。

参考文献:

[1]萨师煊,王珊.数据库系统概论。高等教育出版社,1990

[2]Microsoft Developer Network.Microsoft Corp. 2001

经典小说推荐

杂志订阅