会员登录 - 用户注册 - 网站地图 Office中国(office-cn.net),专业Office论坛
当前位置:主页 > 技巧 > Access技巧 > 数据库系统 > 正文

连接加密的Access数据库

时间:2009-08-08 08:54 来源:网络 作者:佚名 阅读:
一、建立数据库
因为在VisualBasic6.0中有的数据库连接方式不支持Access2000版本格式的数据库,为了便于说明问题,本文所提的数据库以access97版本数据库为例。
在Microsoftaccess97中建立一个数据库,如:ssgl.mdb,并设置密码,如:“1234”,再将数据库文件和VB中创建的工程文件放在同一目录下。
如果用户的计算机上只有Access2000的话,可以先在Access2000中建立ssgl.mdb数据库,并设置密码,再用Access2000中的“数据库实用工具”将数据库转换成access97版本的格式。
当然也可以直接在VisualBasic6.0集成开发环境中通过“可视化数据管理器”来创建数据库,再到access97中设置密码。
通过对数据库文件设置密码,一般情况下,非法用户就不能用常规的手段打开数据库了,对数据库中的信息起到了一定的安全和保密作用。
二、连接加密的access数据库
在VisualBasic6.0中,要建立与数据库的连接,可采用的技术手段很多,如:数据控件、数据对象、数据环境设计器等。开发人员可以根据自身的条件和用户的需求进行选择。
限于篇幅,下面只介绍加密的Access数据库与没有加密的access数据库在连接时的不同之处。关于没有加密的数据库的连接及访问的方法读者可以参阅其它资料。
1、使用控件
①Data控件
Data控件是VisualBasic6.0中的一个内置数据控件,可以通过设置Data控件的connect、DatabaseName、RecordSource属性实现对数据库的连接和访问。
通过Data控件连接加密的数据库的方法有两种:
一种方法是在设计状态时,在“属性窗口”中将Data控件的connect属性的缺省值”Access”改为”;pwd=1234”即可,其它属性的设置方法与没有加密的access数据库的连接相同。
另一种方法是在运行时,通过代码对connect属性赋值来实现。
如:Data1.connect=”;pwd=1234”
Data1.DatabaseName=APP.path+“\ssgl.mdb”
其中,”1234”为access数据库文件ssgl.mdb的密码,下同。
②Adodc控件
Adodc控件是一个ActiveX控件,它使用MicrosoftActiveXDataObjects(ADO)创建到数据库的连接。使用Adodc控件之前,要先将Adodc控件添加到控件工具箱中。方法如下:在VB6.0种选择“工程”菜单,再点击“部件”菜单项,在弹出的“部件”对话框中选中“MicrosoftADODataControl6.0(OLEDB)”选项即可。
通过Adodc控件连接加密的数据库的方法也有两种:
一种方法是在设计状态时,在“属性窗口”中,对Adodc控件的ConnectionString属性设置一个有效的连接字符串,并在连接字符串后增加上”;JetOLEDB:DataBasepassword=1234”,再设置Adodc控件的CommandType、RecordSource的属性就可以创建到加密的数据库的连接了。
另一种方法是在运行时,通过代码动态地设置ConnectionString、CommandType和RecordSource属性来创建连接。只要在ConnectionString属性的有效连接字符串后增加上”;JetOLEDB:DataBasepassword=1234”即可。
2、使用数据对象
①DAO数据对象
要能正确引用DAO数据对象来建立与数据库的连接,应先在VB集成开发环境中选择“工程”菜单,再点击“引用”菜单项,在弹出的“引用”对话框选择“MicrosoftDAO3.51ObjectLibrary”选项来添加DAO数据对象类型库。
接下来就可用如下代码来建立到加密的access数据库ssgl.mdb的连接。
DimdbASDataBase
Setdb=OpenDataBase(App.path+“\ssgl.mdb”,False,False, ”;pwd=1234”)
②ADO数据对象
ADO是Microsoft推出的处理关系数据库和非关系数据库中信息的最新技术,也是Microsoft推崇的用于数据连接和访问的技术。在VB6.0中,Adodc控件、ADO数据对象及DataEnvironment(数据环境设计器)都采用的是ADO技术,因而它们处理加密的access数据库的方法类似。
要能正确引用ADO数据对象,应在VB6.0集成开发环境中选择“工程”菜单,再点击“引用”菜单项,在弹出的“引用”对话框中选中“MicrosoftActiveXDataObjects2.1Library”选项来添加ADO数据对象类型库。
可用如下代码来建立到加密的access数据库ssgl.mdb的连接。
DimcnnASADODB.Connection
DimrstASADODB.Recordset
Setcnn=NewADODB.Connection
Cnn.Provider=”Microsoft.Jet.OLEDB.3.51”
Cnn.ConnectionString=”DataSource=”&App.path&”\ssgl.mdb;”& _
”;JetOLEDB:Databasepassword=1234”
cnn.Open
③使用DataEnvironment(数据环境设计器)
有两种方法可以通过DataEnvironment连接到加密的access数据库:
一种方法是在设计状态时,在DataEnvironment的connection对象的ConnectionSource属性的有效连接字符串后加上”;JetOLEDB:Databasepassword=1234”。
另一种方法是在DataEnvironment_Initialize()事件中编写如下代码:
PrivatesubDataEnvironment_Initialize()
DimstrconnASstring
Strconn=”Provider=Microsoft.Jet.OLEDB.3.51;” &_
”DataSource=”&App.path&“\ssgl.mdb;” &_
”;JetOLEDB:Databasepassword=1234”
DataEnvironment1.connection1.connectionstring=strconn
Endsub

(责任编辑:admin)

顶一下
(0)
0%
踩一下
(0)
0%
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价: