电脑学习 数据库访问&amp 应用程序发布.ppt

上传人:哈尼dd 文档编号:3671658 上传时间:2019-09-19 格式:PPT 页数:81 大小:2.50MB
返回 下载 相关 举报
电脑学习 数据库访问&amp 应用程序发布.ppt_第1页
第1页 / 共81页
电脑学习 数据库访问&amp 应用程序发布.ppt_第2页
第2页 / 共81页
电脑学习 数据库访问&amp 应用程序发布.ppt_第3页
第3页 / 共81页
电脑学习 数据库访问&amp 应用程序发布.ppt_第4页
第4页 / 共81页
电脑学习 数据库访问&amp 应用程序发布.ppt_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《电脑学习 数据库访问&amp 应用程序发布.ppt》由会员分享,可在线阅读,更多相关《电脑学习 数据库访问&amp 应用程序发布.ppt(81页珍藏版)》请在三一文库上搜索。

1、学习目标,掌握在应用程序中添加标准模块、设置启动对象以及在标准模块中声明工程级变量和公有过程的方法 掌握用传统文件I/O语句和函数来进行文件操作的编程方法 掌握用FSO对象模型来进行针对文件操作的编程方法,学习情境三:数据库访问,任务3-1:建立文本文件为数据源的应用程序,目 录,10.1 问题引入 10.2 预备知识 10.3 任务分析 10.4 实现员工工资数据的读取功能 10.5 实现员工工资数据的显示功能 10.6 实现员工工资数据的保存功能 10.7 实现员工工资数据的编辑功能 10.8 文件操作应用举例 10.9 本章容易出错的地方,10.1 问题引入,在之前编写的“员工工资管理系

2、统”中,所有员工工资的原始数据都是在编程时直接写入代码的; 程序运行后,将它们赋值给变量、数组或控件的属性实际上就是存储于计算机的内存中; 并按照程序流程进行修改、添加、删除、计算等处理,得到相应的输出结果; 一旦该程序终止运行,由于内存本身具有易失性的特点,所有处理的结果都无法保留下来。,10.1 问题引入,这就会带来一个问题程序和数据进行分离? 在大多数情况下,编写程序的目的就是需要对大量数据进行处理,更为重要的是,如何将处理的结果需要保留下来? 问题关键数据存放的位置? 由只能临时存储数据的内存变为可永久保存数据的外存,就是存放在独立于程序之外的文件中。,10.2 预备知识,写数据:把内

3、存中的数据传输到相关联的外部设备(例如磁盘等)并作为文件存放的操作; 读数据:把数据文件中的数据传输到内存程序中的操作;,文件:记录在外部介质上的数据的集合,顺序型:适用于读写在连续块中的文本文件; 随机型:适用于读写有固定长度记录结构的文本文件或者二进制文件 ; 二进制型:适用于读写任意有结构的文件;,文件访问类型,10.2 预备知识,引用Scripting 类型库 声明相关的对象变量 创建相关的对象变量 进行读、写操作 关闭文件(TextStream对象的Close方法),File System Object (FSO) 对象模型编程,10.2 预备知识,打开或建立文件(Open 语句)

4、进行读、写操作(Line Input #、Write # 语句等) 关闭文件(Close 语句),传统文件I/O处理,10.3 任务分析,利用文本文件进行员工工资数据管理的应用程序 在程序运行时,将存放于文本文件中的员工工资数据读出,实现浏览显示功能; 对这些数据进行修改、删除、添加、插入等编辑操作; 将更新后的员工工资数据再写入文件;,任务分析:,10.3 任务分析,界面运行效果如下:,10.3 任务分析,数据输入:Form_Load 数据处理:cmd_Browse_Click cmd_Edit_Click 数据输出: 界面输出:Form_Load、cmd_Browse_Click、cmd_

5、Edit_Click 文件输出:cmd_Write_Click,声明工程级的通用过程 执行对文件中数据的读写操作,可以与窗体界面分离; 有助于程序的扩展,可以直接调用这些过程; 启动对象Sub Main,创建程序主窗体和事件过程代码框架:,10.3 任务分析,Private Sub Form_Load() 从文件中读取数据 显示第1个员工的工资数据 显示员工的总人数和当前员工的顺序号 End Sub Private Sub cmd_Browse_Click(Index As Integer) Select Case Index Case 0 第一位员工 Case 1 前一位员工 Case 2

6、后一位员工 Case 3 最后一位员工 End Select 显示第n位员工的工资数据 显示员工的总人数和当前员工的顺序号 End Sub,框架代码:,10.3 任务分析,Private Sub cmd_Edit_Click(Index As Integer) Select Case Index Case 0 在所有记录的最后新增一条 Case 1 修改当前记录 Case 2 在当前记录的位置插入一条记录 Case 3 删除当前记录 End Select 显示第n位员工的工资数据 显示员工的总人数和当前员工的顺序号 End Sub Private Sub cmd_Write_Click() 向

7、文件中写入数据 End Sub,框架代码:,10.4 实现员工工资数据的读取功能,实现把数据从外存(文本文件)读到内存(变量)中的功能 在标准模块中声明:与员工工资数据有关的工程级变量和符号常量; 在标准模块中创建:从文本文件中读出数据的通用过程 方法一:采用FSO对象模型 方法二:采用传统文件I/O语句和函数,编写从文本文件中读出数据的通用过程,10.4 实现员工工资数据的读取功能,步骤一:引用Scripting 类型库 单击“工程”菜单中的“引用”命令; 打开“引用”对话框; 从“可用的引用”列表框中选择“Microsoft Scripting Runtime”; 步骤二:声明相关的对象变

8、量 Dim fso As New FileSystemObject Dim ts As TextStream New是一个关键字,它用于创建新对象。,方法一:采用FSO对象模型,10.4 实现员工工资数据的读取功能,步骤三:创建相关的对象 Set ts = fso.OpenTextFile(g_strFileName, ForReading) 用Set语句创建对象的实例,把对象赋予其变量。 其中,第二个参数可为下列三个常数之一 ForReading:以只读模式打开文件。不能对此文件进行写操作。 ForWriting:以只写方式打开文件。不能对此文件进行读操作。 ForAppending:打开文

9、件并在文件末尾进行写操作。,10.4 实现员工工资数据的读取功能,步骤四:进行读操作 TextStream对象的ReadLine方法 步骤五:关闭文件 文件操作完毕,就要将文件关闭,这样下一次才能正确的创建文本流对象。 TextStream对象的Close方法,10.4 实现员工工资数据的读取功能,五个步骤中后三步都是在ReadFromFile_fso通用过程中实现 文件读取:方法一 Public Sub ReadFromFile_fso() 过程级变量i, j: i表示第几位员工,j表示第几项信息 Dim i As Integer, j As Integer FSO: 步骤三文本流的创建(读

10、方式) Set ts = fso.OpenTextFile(g_strFileName, ForReading) i = 0 Do循环: 变量i 赋初值 Do While Not ts.AtEndOfStream Do循环:执行一次,读取一位员工数据 i = i + 1 Do循环: 变量i 每次累加1 For j = 1 To gInfoNum For循环:执行一次,读取工资数据中的一项 FSO: 步骤四文本流的读操作 g_vntArrWage(i, j) = ts.ReadLine Next Loop FSO: 步骤五文本流的关闭 ts.Close g_intRecNum = i End S

11、ub,10.4 实现员工工资数据的读取功能,步骤一:打开文件 Open 语句:对文件做任何I/O(输入/输出)操作之前都必须先打开文件; 在内存中为文件的读写分配一个缓冲区,并决定使用什么样的访问方式; 具体的Open语句如下所示: Open g_strFileName For Input As #1 其中,打开方式: Input:从顺序型文件中输入(读)字符; Output:把字符输出(写)到顺序型文件,覆盖写; Append:把字符输出(写)到顺序型文件的尾部,追加写;,方法二:采用传统文件I/O语句和函数进行读文件,10.4 实现员工工资数据的读取功能,步骤二:进行读操作 Line In

12、put # 语句:从已打开的顺序文件中读出一行中的所有字符(不包括回车换行符),并将它分配给字符串型变量; Line Input #文件号, 变量名 其中,文件号应该与之前Open语句中的文件号相对应; 步骤三:关闭文件 打开一个文件(Input、Output 或 Append方式)之后,一旦要为其它类型的操作重新打开它,就必须先用 Close 语句关闭它; Close #文件号,10.5 实现员工工资数据的显示功能,显示第n位员工的工资数据,并显示员工的总人数和当前员工的顺序号 Private Sub DispWageInfo() Dim j As Integer For j = 1 To

13、gInfoNum txt_WageInfo(j - 1) = g_vntArrWage(g_intNum, j) Next lbl_CountAll = “共“ & Str(g_intRecNum) & “位员工“ lbl_CountNum = “第“ & Str(g_intNum) & “位员工“ End Sub,编写显示员工工资数据以及相关数据的通用过程,程序一开始运行,就要求把员工的工资数据显示在相应的文本框中,并在界面下方的标签中显示出员工的总人数和当前员工的顺序号; 这些数据的显示操作在之后还会被频繁用到;,10.5 实现员工工资数据的显示功能,Private Sub Form_Lo

14、ad() Dim i As Integer Call ReadFromFile_fso 文件读取:方法一 g_intNum = 1 Call DispWageInfo 显示第1位员工工资数据、员工的总人数和当前员工的顺序号 For i = 1 To gInfoNum txt_WageInfo(i - 1).Enabled = False Next cmd_Write.Visible = False End Sub,编写Form_Load事件过程,10.5 实现员工工资数据的显示功能,Private Sub cmd_Browse_Click(Index As Integer) Select Ca

15、se Index Case 0 第一位员工 g_intNum = 1 Case 1 前一位员工 If g_intNum = g_intRecNum Then MsgBox “已是最后一位员工!“ Else g_intNum = g_intNum + 1 End If Case 3 最后一位员工 g_intNum = g_intRecNum End Select Call DispWageInfo 显示第n位员工工资数据、员工的总人数和当前员工的顺序号 End Sub,编写浏览员工工资数据的cmd_Browse_Click事件过程,10.6 实现员工工资数据的保存功能,文件中的员工工资数据能在窗

16、体上显示、浏览,同时,程序还具有编辑功能: 增加新员工的工资数据; 对某位现有员工的工资数据进行修改或直接删除; 编辑的结果只有写到文件中才能真正地保存下来,所以这些功能最终都可以归结为文件的写入操作; 覆盖写入 追加写入,分析:,10.6 实现员工工资数据的保存功能,将新增员工的工资数据插入到文件中间的某个位置; 对现有员工工资数据进行修改、删除; 说明: 顺序型文件操作模式,只能从上到下逐条顺序进行; 要在存储工资数据的二维数组中完成了相应的操作后,才能执行文件的覆盖写入操作; 用重新把整个数组写入文件的方式来实现;,编写向文本文件覆盖写入数据的通用过程,10.6 实现员工工资数据的保存功

17、能,Public Sub WriteToFile_fso() Dim i As Integer, j As Integer FSO: 步骤三文本流的创建(覆盖写方式) Set ts = fso.OpenTextFile(g_strFileName, ForWriting) For i = 1 To g_intRecNum 外层循环:执行一次,写入一位员工的工资数据 For j = 1 To gInfoNum 内层循环:执行一次,写入工资数据中的一项信息 ts.WriteLine g_vntArrWage(i, j) FSO: 步骤四文本流的写操作 Next Next ts.Close FSO:

18、 步骤五文本流的关闭 End Sub,文件覆盖写入:方法一,说明:FSO对象模型的处理过程包括五个步骤,其中, 第一步“引用”必须要在编写具体代码之前完成的; 第二步“声明”是将相关对象的声明放在标准模块中的通用声明部分;,10.6 实现员工工资数据的保存功能,Public Sub WriteToFile_IO() Dim i As Integer, j As Integer 传统文件I/O: 步骤一文件打开(覆盖写方式) Open g_strFileName For Output As #1 For i = 1 To g_intRecNum 外层循环:执行一次,写入一位员工的工资数据 For

19、 j = 1 To gInfoNum 内层循环:执行一次,写入工资数据中的一项信息 Print #1, g_vntArrWage(i, j) 传统文件I/O: 步骤二文件写操作 Next Next Close #1 传统文件I/O: 步骤三文件关闭 End Sub,文件覆盖写入:方法二,10.6 实现员工工资数据的保存功能,新增员工的工资数据放在文件的最后; 文件中原有的数据会全部予以保留的情况; 说明: 在存储工资数据的二维数组中完成了相应的操作后,只把最后一位员工的工资数据记录追加写入文件; 本次写入的数据就会添加到文件的末尾;,编写在文本文件末尾追加写入数据的通用过程,10.6 实现员工

20、工资数据的保存功能,Public Sub AppendToFile_fso() Dim i As Integer, j As Integer FSO: 步骤三文本流的创建(追加写方式) Set ts = fso.OpenTextFile(g_strFileName, ForAppending) For j = 1 To gInfoNum For循环:执行一次,写入工资数据中一项信息 ts.WriteLine g_vntArrWage(g_intRecNum, j) FSO: 步骤四文本流的写操作 Next ts.Close FSO: 步骤五文本流的关闭 End Sub,文件追加写入:方法一,1

21、0.6 实现员工工资数据的保存功能,Public Sub AppendToFile_IO() Dim j As Integer 传统文件I/O: 步骤一文件打开(追加写方式) Open g_strFileName For Append As #1 For j = 1 To gInfoNum For循环:执行一次,写入工资数据中的一项信息 传统文件I/O: 步骤二文件的写操作 Print #1, g_vntArrWage(g_intRecNum, j) Next Close #1 传统文件I/O: 步骤三文件关闭 End Sub,文件追加写入:方法二,10. 7 实现员工工资数据的编辑功能,声明

22、两个模块级变量m_blnDele、m_blnWrite 数据类型都是布尔(逻辑)型 区别编辑操作类型:新增、插入、修改、删除 m_blnDele:表示编辑数据的方式 m_blnWrite:表示数据写入的方式,m_blnWrite = True 初始化为覆盖写入方式 m_blnDele = False 初始化为非删除操作 fra_Browse.Visible = False 浏览/编辑框架不可见 fra_Edit.Visible = False cmd_Write.Visible = True 保存数据按钮可用,编写编辑按钮的cmd_Edit_Click事件过程,10. 7 实现员工工资数据的编

23、辑功能,新增一条工资记录的代码段 修改一条工资记录的代码段 修改一条工资记录的代码段 删除一条工资记录的代码段,数组操作,10. 7 实现员工工资数据的编辑功能,Private Sub cmd_Write_Click() Dim i As Integer If m_blnDele = False Then For i = 1 To gInfoNum 将文本框中的内容(当前员工工资数据)存入数组 g_vntArrWage(g_intNum, i) = txt_WageInfo(i - 1) Next End If If m_blnWrite = True Then 向文件中写入数据 Call W

24、riteToFile_fso 文件覆盖写入:方法一 Else Call AppendToFile_fso 文件追加写入:方法一 End If fra_Browse.Visible = True 浏览/编辑框架可见 fra_Edit.Visible = True For i = 1 To gInfoNum 文本框中的内容不接受输入 txt_WageInfo(i - 1).Enabled = False Next cmd_Write.Visible = False 保存数据按钮不可用 End Sub,编写保存数据按钮的cmd_Write_Click事件过程,10.8 文件操作应用举例,程序运行时,

25、单击“原始数据由文件读出”,就会读取“扫雷排行榜.txt” 中玩家的数据;单击4个浏览按钮,就可以查看每一个玩家的名字、所用时间;,任务描述(课堂实训1),运行效果:,任务分析:,采用FSO对象模型或传统文件I/O处理将文件中的数据读到数组,并浏览这些数据;,10.9 本章容易出错的地方,自行创建文本文件时,在输入最后一行数据后,不能再多输入空行,否则会出现“下标越界” ;,1.文本文件结构错误,没有引用,就不能创建对象;,2. 采用FSO对象模型,容易忘记引用Scripting 类型库 ;,Dim fso As New FileSystemObject,在声明语句中类名之前加上New,就是在

26、声明对象的同时,也创建了该对象;,3.采用FSO对象模型,在声明FileSystemObject时容易忘记关键字New;,10.9 本章容易出错的地方,Open语句为每个打开的文件分配一个有效的文件号( 1 到 511 之间),在对文件进行操作时,用文件号代表该文件;对于已经使用的、正处于打开状态的文件的文件号,不能再用于另外的文件;,4. 采用传统文件I/O处理,容易乱用文件号 ;,以某种打开方式打开一个文件,就不能同时再用其他方式去访问该文件,如果确实需要,就必须先关闭该文件,再重新打开;,5.采用两种方法时,都容易忘记关闭文件;,学习目标,了解数据库的一些基本概念 掌握创建Access数

27、据库的方法 掌握使用ADO数据控件连接数据库和数据表的方法 掌握数据识别控件绑定到ADO数据控件的方法 掌握ADO控件的Recordset对象常用方法和常用属性,编程实现数据记录的浏览、添加、修改、删除、查找等功能。 理解ADO对象模型的概念,掌握使用ADO对象模型编程的方法和步骤,学习情境三:数据库访问,任务3-2:建立数据库文件为数据源的应用程序,目 录,11.1 任务描述与运行效果 11.2 认识Access数据库 11.3 创建Access数据库 11.4 连接数据库和数据表 11.5 将数据识别控件绑定到ADO控件 11.6 编写移动记录指针的代码 11.7 编写添加记录和确认代码

28、11.8 编写删除记录的代码 11.9 显示记录总数和当前记录序号 11.10 编写查询记录的代码 11.11 利用ADO对象模型编程,11.1 任务描述与运行效果,任务描述,本章要建立以数据库为数据源的“员工工资管理系统”,能实现浏览显示、增加、删除、显示记录数和当前记录号、按姓名查询等功能。,运行效果,11.2 认识Access数据库(1),一、数据与程序一体,不能修改、添加和删除,保存的数量很有限,二、数据与程序分离:数据文件和程序文件,文本文件 数据显示、添加、修改、删除都很麻烦 管理方式功能弱、效率低,保存的数量小,安全性差 数据库 它是在一定的数据库管理系统中建构的具有一定结构的相

29、互关联的数据的集合 数据管理系统是对数据实施有效集中管理的专门软件。,11.2 认识Access数据库(2),员工信息数据表,行,列,Access是微软Office软件包中的数据库管理软件,可用来创建和管理数据库。,table,Data Base,字段(列),记录(行),表(对象),数据库(.mdb文件),record,field,11.3 创建Access数据库(1),在建库之前要确定库名、表名、表结构(字段名、类型、大小),表结构:,库名:wages.mdb,表名:info,11.3 创建Access数据库(2),用Access数据库管理软件创建 用Visual Basic集成开发环境中的

30、“可视化数据管理器”创建,创建方法,选择“外接程序” “可视化数据管理器”菜单,打开可视化数据管理器窗口 在“Visdata”窗口中选择“文件” “新建” “Microsoft Access” “Version 7.0 MDB” 输入要建的数据库文件的名称(wages.mdb),并指定保存的路径 鼠标右键单击 “数据库窗口”的空白处,在弹出的快捷菜单中选择“新建表” 在“表名称”框中输入数据表的名称(info) 单击“添加字段”按钮,根据设计的表结构依次输入每一字段的名称、类型、大小后,单击“生成表”按钮 鼠标右键单击已创建好的数据表(info),在弹出的快捷菜单中选择“打开”,进入编辑记录窗

31、口 向数据表中添加、修改、删除记录,步骤,11.4 连接数据库和数据表(1),要在程序中使用数据库中的数据,就要在程序中连接数据库,以数据库作为程序的数据源 利用ADO控件连接数据库是一种简单直接的方法,添加ADO 控件,工程部件Microsoft ADO Data Control,11.4 连接数据库和数据表(2),在窗体上的Adodc1控件上面单击鼠标右键,选取快捷菜单 “ADODC属性”命令,弹出“属性页”对话框 在“属性页”对话框的“通用”选项卡中选取“使用连接字符串”选项,然后单击“生成”按钮,则弹出“数据链接属性”对话框 在“提供程序”选项卡中选择“Microsoft Jet 4.

32、0 OLE DB Provider”,2. 为ADO 控件选择数据源驱动程序,11.4 连接数据库和数据表(3),在“连接”选项卡中,选择或输入数据库名称(wages.mdb,建议用相对路径) 测试连接成功,单击“确定”返回到ADODC控件的“属性页” 选取“记录源”选项卡,选择“命令类型”(2-adCmdTable),选择“表或存储过程名称”(info),3.将ADO 控件连接数据库和数据表,11.5 将数据识别控件绑定到ADO控件,绑定,是将控件与一个数据源相链接,不用编写代码就能让数据源中的数据显示在窗体的控件中。 当数据源中的记录指针或数据发生变化时,窗体控件中的数据也能自动变化。 当

33、修改了控件中的数据,数据源中的数据也会被修改。 能和数据源绑定的控件称为数据识别控件:文本框、标签、列表框、组合框等。,作用:,设置数据识别控件的DataSource属性为可用的数据源(例ADO控件),设置数据识别控件的Datafield属性为相应的字段名,11.6 编写移动记录指针的代码,第一条: adodc1.recordset.movefirst 上一条: adodc1.recordset.moveprevious If adodc1.recordset.bof then adodc1.recordset.movefirst 下一条: adodc1.recordset.movenext

34、If adodc1.recordset.eof then adodc1.recordset.movelast 最后一条: adodc1.recordset.movelast,ADO控件有一个重要成员Recordset对象(记录集对象),该对象表示记录的集合。利用Recordset自己的属性和方法,可对数据库表中的记录进行访问和操作。,11.7 编写添加记录和确认代码,添加 Adodc1.recordset.AddNew 添加一条新的空记录 确认 a = MsgBox(“确实要添加记录吗?“, vbYesNo) If a = vbYes Then adodc1.recordset.Update

35、更新 Else adodc1.recordset.CancelUpdate 放弃更新 End If,11.8 编写删除记录的代码,s = MsgBox(“确实要删除该记录吗?“, vbYesNo) If s = vbYes Then adodc1.recordset.Delete adodc1.recordset.MoveNext If adodc1.recordset.EOF Then .MoveLast End If,11.9 显示记录总数和当前记录序号,Private Sub Text1_Change( ) Label7(1).Caption =Adodc1.Recordset.Reco

36、rdCount Label7(4).Caption = Adodc1.Recordset.AbsolutePosition End Sub,11.10 编写查询记录的代码(1),参数意义: Criteria:查找条件字符串,必选,格式为: “字段名称 比较操作符 要查找的值“ 字段名称:必须是数据表中已存在的字段名称 比较操作符:=、 、 =、=、like等 要查找的值:主要分成数值型、日期时间(定界符#)和字符串型(定界符“ ) SkipRows:取值为一整数n,和Start参数一起决定了查找的起始位置,表示以Start位置为基准再跳过n条记录开始查找,缺省值为0 searchDirecti

37、on:指定查找的方向,可选值为adSearchForward(或1)表示向下检索,adSearchBackward(或-1)表示向上检索,缺省值为1 Start:指定开始查找的基准位置,可选值为0表示以当前记录为基准,1表示以第一条记录为基准,缺省值为0,Adodc1.Record.Find criteria, SkipRows, searchDirection, start,11.10 编写查询记录的代码(2),1.查找常量 Adodc1.Recordset.Find “姓名=张三“ Adodc1.Recordset.Find “标准工资2000“ Adodc1.Recordset.Find

38、 “出生日期=#2000/1/1#“ 2.查找变量 x = InputBox(“请输入要查询的值“, “查询输入“) Adodc1.Recordset.Find “姓名=“ & x & “ Adodc1.Recordset.Find “标准工资“ & x Adodc1.Recordset.Find “出生日期=#“ & x & “#“ 3.模糊查询 Adodc1.Recordset.Find “姓名 like *红*“ Adodc1.Recordset.Find “姓名 like *“ & x & “*“,举例,11.10 编写查询记录的代码(3),11.11 利用ADO对象模型编程(1),对

39、象模型定义了程序中所使用的对象之间的关系即对象的分层结构,它能够以一种使编程变得更容易的方式来组织对象。 对象模型表达了包含关系,可以认为某些对象是包含其它对象的对象,或者是由其它对象所组成的对象。,11.11 利用ADO对象模型编程(2),Connection对象代表了与数据源的连接; Recordset对象表示的是来自表或做为命令执行结果的记录集; Command对象代表对数据源执行的命令;,ADO对象模型,11.11 利用ADO对象模型编程(3),引用ADO的类型库 声明对象变量 创建对象的一个实例 调用该对象的成员,使用该对象及其成员的属性和方法处理对象 关闭对象,释放对象所占据的空间

40、,总体步骤,11.11 利用ADO对象模型编程(4),选择“工程”菜单中的“引用”菜单项,打开“引用”对话框,在“可用的引用”列表框中选中ADO类型库“Microsoft ActiveX Data Objects 2.8 Library”后“确定”。,引用ADO类型库,在代码窗口的通用声明段输入以下声明对象变量的语句: Dim cn As ADODB.Connection Dim rs As ADODB.Recordset,11.11 利用ADO对象模型编程(5),在Form_Load事件过程中创建这两个对象的实例: Private Sub Form_Load() Set cn = New A

41、DODB.Connection Set rs = New ADODB.Recordset End Sub,声明对象变量,创建对象的实例,11.11 利用ADO对象模型编程(6),调用Recordset对象的Open方法连接数据库中的表 rs.Open “info“, cn, adOpenKeyset, adLockOptimistic,用创建的Connection对象实现与数据库的连接 cn.Provider = “Microsoft.jet.oledb.4.0“ cn.Open App.Path & “wages.mdb”,数据源 (表名),Connection对象,锁定类型 adLockR

42、eadOnly AdLockPessimistic AdLockOptimistic AdLockBatchOptimistic,游标类型 adOpenForwardOnly adOpenKeyset adOpenDynamic adOpenStatic,连接数据库,打开数据表,11.11 利用ADO对象模型编程(7),Dim i As Integer For i = 0 To 4 Set txt_Wageinfo(i).DataSource = rs txt_Wageinfo(i).DataField = rs(i).Name Next i,把文本框绑定到记录集,11.11 利用ADO对象模

43、型编程(8),和使用ADO数据控件的方法非常类似: rs.MoveFirst 第一条 rs.MovePrevious 上一条 If rs.BOF Then rs.MoveFirst rs.MoveNext 下一条 If rs.EOF Then rs.MoveLast rs.MoveLast 最后一条,利用Recordset对象实现信息浏览,学习目标,1. 掌握“打包和展开向导”的使用步骤 2. 掌握打包并创建安装程序的步骤和方法 3. 掌握展开安装程序的步骤和方法,学习情境四:应用程序发布,任务4-1: “打包和展开向导”应用,目 录,12.1 使用 “打包展开向导” 12.2 打包并创建安装

44、程序 12.3 展开安装程序,12.1 使用 “打包展开向导”,使用”打包和展开向导“发布应用程序分为以下两个步骤。 1.打包:将应用程序所需的程序文件和系统文件进行打包和压缩,并创建相应的安装程序。 2.展开:将打包后的文件复制到软盘、光盘、网络驱动器和发布WWW服务器上,以便其他用户可以进行安装和使用。 启动”打包和展开向导“菜单项有两种方法。 1.在”开始“菜单下,通过”程序“”Microsoft Visual Basic 6.0 中文版“下的”Microsoft Visual Basic 6.0 中文版工具“菜单来打开”打包和展开向导“,然后通过浏览按钮选择一个要进行打包和配置的工程。

45、 2.在 Visual Basic 6.0 的开发环境中,通过”外接程序管理器“菜单项启动”打包和展开向导“,这样该向导将对当前工程进行打包和展开,不必再去选中工程。使用这个方法之前,首先要将”打包和展开向导“作为外接程序添加到 Visual Basic 6.0 开发环境的菜单中。,12.2 打包并创建安装程序,1. 打开“员工工资管理系统”工程文件,在Visual Basic 6.0集成环境中选择“外接程序”菜单中的“打包和展开向导”命令,显示界面如下图所示。,12.2 打包并创建安装程序,向导程序的主界面中共有三个按钮,分别用来进行打包、展开和管理脚本,在“激活工程”的文本框中显示了当前的

46、工程。使用鼠标单击“打包”按钮。进入下一个页面,如下图所示:,12.2 打包并创建安装程序,2.选择要打包的类型,普通的工程选择“标准安装包”就可以了,控件之类的看使用的地点,如果是在网页中使用,请选择“Internet软件包”,然后点击“下一步”按钮。如下图所示:,12.2 打包并创建安装程序,3.选择包文件存放的位置,如下图所示:,12.2 打包并创建安装程序,4.向导自动找出了工程中应用的控件、等文件,你需要自己到工程中检查一下,看看所包含的文件是否全,第三方控件所带的文件一定要带上,然后点击下一步,如下图所示:,12.2 打包并创建安装程序,5.选择打包的文件类型,根据需要,如果你发布

47、是用光盘,则选择单个的压缩文件,如果发布是用软盘之类的,则选择多个压缩文件。然后单击“下一步”。如下图所示:,12.2 打包并创建安装程序,6.确定安装程序的标题,就是在安装背景上显示的文字。然后单击“下一步”,如下图所示:,12.2 打包并创建安装程序,7.在这里你可以设置在“开始菜单”中显示哪些项目,比如你可以加卸载程序项,可以选择“新建项”按钮,然后在“目标”栏中输入$(WinPath)st6unst.exe -n “$(AppPath)ST6UNST.LOG“,包括双引号。在“开始”项目中选择“$(WinPath)”,不包括双引号。然后点击确定,如下图所示:,12.2 打包并创建安装程

48、序,8.在此你可以更改文件夹的安装位置,然后点击“下一步”,如下图所示:,12.2 打包并创建安装程序,SETUP.LST 安装信息文件 .CAB文件包是数据文件,安装的文件全部在包里 Setup.exe是安装的主文件,9.在此你可以将文件设置为共享(即文件可以被多个程序使用),到此为止安装制作完成。安装完之后会生成三个文件和一个文件夹,如下图所示:,12.2 打包并创建安装程序,Support是压缩包中所包含的所有文件。如下图所示:,12.3 展开安装程序,1.在“打包和展开向导”的主界面中单击“展开”按钮,屏幕上将提示选择要展开的文件包,也就是刚才存储的文件包脚本。如下图所示。,12.3 展开安装程序,2.单击“下一步”,屏幕上显示“展开方法”对话框,如下图所示,选择展开方式。,12.3 展开安装程序,3.单击“下一步”,屏幕上显示“文件夹”对话框,如下图所示,要求选择一个展开的文件夹。选择路径后,单击“新建文件夹”按钮,会在指定的路径下新建一个文件夹。,12.3 展开安装程序,4.单击“下一步”,屏幕上显示“完成”对话框,并提示将刚才所作的设置保存在展开脚本中,如下图所示。,12.3 展开安装程序,5.单击“完成”按钮,“打包和展开向导”就开始展开文件,在展开的文件夹内有如下图所示的三个文件“setup”、“SETUP.LST”、“ 员工工资管理系统.CAB”,将这些文件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/环境 > 装饰装潢


经营许可证编号:宁ICP备18001539号-1