专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »VB教程 » access数据库加密:VB6.0 中连接加密的Access数据库 »正文

access数据库加密:VB6.0 中连接加密的Access数据库

来源: 发布时间:星期四, 2009年1月15日 浏览:61次 评论:0
  以前曾看过介绍如何在Visual Basic中连接和使用Access数据库技术文章实际上在专业数据库软件Software开发中为了确保数据库中信息安全往往要求对数据库文件进行加密以防止非法用户通过其它常规手段将其打开那么在Visual Basic中如何建立和加密数据库连接呢?笔者在开发本校宿舍管理信息系统中整理总结了些思路方法和窍门技巧现写出来和同行交流

  、建立数据库

  在Visual Basic 6.0中有数据库连接方式不支持Access 2000版本格式数据库为了便于介绍说明问题本文所提数据库以Access 97版本数据库为例

  在Microsoft Access 97中建立个数据库如:ssgl.mdb并设置密码如:“1234”再将数据库文件和VB中创建工程文件放在同目录下

  如果用户计算机上只有Access 2000可以先在Access 2000中建立ssgl.mdb数据库并设置密码再用Access 2000中“数据库实用工具”将数据库转换成Access 97版本格式

  当然也可以直接在Visual Basic 6.0集成开发环境中通过“可视化数据管理器”来创建数据库再到Access 97中设置密码

  通过对数据库文件设置密码般情况下非法用户就不能用常规手段打开数据库了对数据库中信息起到了安全和保密作用

   2、连接加密Access数据库

  在Visual Basic 6.0中要建立和数据库连接可采用技术手段很多如:数据Control控件、数据对象、数据环境设计器等开发人员可以根据自身条件和用户需求进行选择

  限于篇幅下面只介绍加密Access数据库和没有加密Access数据库在连接时区别的处有关没有加密数据库连接及访问思路方法读者可以参阅其它资料

  1、使用Control控件

  ① DataControl控件

  DataControl控件是Visual Basic 6.0中个内置数据Control控件可以通过设置DataControl控件connect、DatabaseName、RecordSource属性实现对数据库连接和访问 通过DataControl控件连接加密数据库思路方法有两种:

  种思路方法是在设计状态时在“属性窗口”中将DataControl控件connect属性缺省值”Access”改为”; pwd=1234”即可其它属性设置思路方法和没有加密Access数据库连接相同

  另种思路方法是在运行时通过代码对connect属性赋值来实现如:

  Data1.connect=”; pwd=1234”
Data1.DatabaseName=APP.path + “\ssgl.mdb”


  其中”1234”为Access数据库文件ssgl.mdb密码下同

  ②AdodcControl控件

  AdodcControl控件是个ActiveXControl控件它使用Microsoft ActiveX Data Objects(ADO)创建到数据库连接使用AdodcControl控件的前要先将AdodcControl控件添加到Control控件工具箱中思路方法如下:在VB 6.0种选择“工程”菜单再点击“部件”菜单项在弹出“部件”对话框中选中“Microsoft ADO Data Control 6.0(OLEDB)”选项即可

  通过AdodcControl控件连接加密数据库思路方法也有两种:

  种思路方法是在设计状态时在“属性窗口”中对AdodcControl控件ConnectionString属性设置个有效连接并在连接串后增加上”; Jet OLEDB: DataBase password=1234”再设置AdodcControl控件CommandType、RecordSource属性就可以创建到加密数据库连接了

  另种思路方法是在运行时通过代码动态地设置ConnectionString、CommandType和RecordSource属性来创建连接 只要在ConnectionString属性有效连接串后增加上”; Jet OLEDB: DataBase password=1234”即可

  2、使用数据对象

  ① DAO数据对象

  要能正确引用DAO数据对象来建立和数据库连接应先在VB集成开发环境中选择“工程”菜单再点击“引用”菜单项在弹出“引用”对话框选择“Microsoft DAO 3.51 Object Library”选项来添加DAO数据对象类型库

  接下来就可用如下代码来建立到加密Access数据库ssgl.mdb连接

  Dim db AS DataBase
Set db=OpenDataBase(App.path + “\ssgl.mdb” , False , False , ” ; pwd=1234”)


  ② ADO数据对象

  ADO是Microsoft推出处理关系数据库和非关系数据库中信息最新技术也是Microsoft推崇用于数据连接和访问技术在VB 6.0中AdodcControl控件、ADO数据对象及DataEnvironment(数据环境设计器)都采用是ADO技术因而它们处理加密Access数据库思路方法类似

  要能正确引用ADO数据对象应在VB 6.0集成开发环境中选择“工程”菜单再点击“引用”菜单项在弹出“引用”对话框中选中“Microsoft ActiveX Data Objects 2.1 Library”选项来添加ADO数据对象类型库

  可用如下代码来建立到加密Access数据库ssgl.mdb连接

  Dim cnn AS ADODB.Connection
Dim rst AS ADODB.Record
Set cnn=New ADODB.Connection
Cnn.Provider= ”Microsoft.Jet.OLEDB.3.51”
Cnn.ConnectionString= ”Data Source=” & App.path & ”\ssgl.mdb;” & _
” ;Jet OLEDB:Database password=1234”
cnn.Open




  ③ 使用DataEnvironment(数据环境设计器)

  有两种思路方法可以通过DataEnvironment连接到加密Access数据库:

  种思路方法是在设计状态时在DataEnvironmentconnection对象ConnectionSource属性有效连接串后加上” ;

  Jet OLEDB: Database password=1234”

  另种思路方法是在DataEnvironment_Initialize事件中编写如下代码:

  Private sub DataEnvironment_Initialize( )
Dim strconn AS
Strconn=” Provider=Microsoft.Jet.OLEDB.3.51;” & _
”Data Source=” & App.path & “\ssgl.mdb;” & _
”; Jet OLEDB: Database password=1234”
DataEnvironment1.connection1.connection=strconn
End sub


  以上思路方法及相关代码笔者都已在Windows 98操作系统环境Visual Basic 6.0中调试、验证并通过



0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: