




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
读书笔记一VB简介VisualBasic (简称VB)是一种可视化的、事件驱动型的 Windows应用程序开发工具,它在GUI设计、绘图、制表、运算、通信和多媒体开发方面都具有简单易行、功能强大等优点,所以越来越受到开发人员的亲睐。同时,
VB在数据库开发方面也具有
Foxpro
所远不能及的强大功能。
VB能够读取和访问
Access
、Excel
、DbaseX、Foxpro、Btrieve
和ODBC等多种数据库,并能利用
VB自身所带的数据库引擎创建 Access数据库。所以 VB在管理信息系统( MIS)的开发和建设方面得到了是益广泛的应用。VB
访问数据库通常有三种途径:第一,通过数据库控制控件
DataControl
访问;第二,通过VB提供的数据库对象变量编程访问;第三,通过
ODBC接口访问
ODBCAPI函数。在这三种方法中,第一种方法操作起来最方便、灵活、易于掌握,同时也最能体现
VisualBasic
面向对象的特色,本次我所做的“酒店客房管理系统”主要使用数据控件(
DataControl
)来实现
vb程序访问access
数据库。因此我首先查阅了
data
控件的初步知识
.Data控件的使用可以使用
Data
控件来执行大部分数据访问操作,而根本不用编写代码。与
Data
控件相连结的数据觉察控件自动显示来自当前记录的一个或多个字段的数据,
或者,在某些情况下,显示来自当前记录旁边的一个记录集合中的一个或者多个字段中的数据。
Data
控件在当前记录上执行所有操作。用
Data
控件连数据库的话,数据库的格式必须是
ACCESS97
版本如果Data 控件被指示移动到一个不同的记录,则所有被连结的控件自动把当前记录的任何改变传递给 Data 控件以保存在数据库中。 Data 控件移动到被指定的记录,同时把当前记录中的数据传回被连结的控件,并在那里显示。Data 控件自动处理一些意外事件包括空记录集,添加新记录,编辑和更新现有记录,处理某些类型的错误。然而,在更复杂的应用程序里,则需要捕获
Data
控件不能处理的某些错误类型。例如,当
MicrosoftJet
数据库引擎访问数据文件有问题、没有权限或不能按照代码执行查询时, 会导致可捕获的错误。 如果错误发生在应用过程开始之前或由于某些内部错误, Error 事件被触发。属性DataBase(DataAccess
属性,DatabaseName属性,Exclusive),RecordSource 属性,Recordset
属性,Options 属性,ReadOnly属性属性,BOFAction,EOFAction 属性,RecordsetType 属性,DefaultType 属性(Data控件),DefaultCursorType 属性(Data控件)。方法UpdateControls 方法,UpdateRecord 方法。摘自:《VisualBasic 程序设计基础》作者:杨小影 王亚利出版社:中国水利水电出版社读书笔记二DAO(DatabaseAccessObject )数据库访问对象在VB中提供了两种与Jet数据库引擎接口的方法:Data控件和数据访问对象(DAO)。Data控件只给出有限的不需编程而能访问现存数据库的功能,而DAO模型则是全面控制数据库的完整编程接口。Data控件将常用的DAO功能封装在其中,它与DAO控件的关系就好象内存与CACHE之间的关系一样,所以这两种方法并不是互斥的,实际上,它们常同时使用。DAO模型是设计关系数据库系统结构的对象类的集合。 它们提供了完成管理一个关系型数据库系统所需的全部操作的属性和方法, 这其中包括创建数据库, 定义表、字段和索引,建立表间的关系,定位和查询数据库等。VisualBasic 中的数据库编程就是创建数据访问对象,这些数据访问对象对应于被访问物理数据库的不同部分,如数据库、表、字段和索引等,同时用这些对象的属性和方法来实现对数据库的操作,以便在VisualBasic窗体中使用绑定和非绑定控件来显示操作结果并接收用户输入。VisualBasic 通过DAO和Jet引擎可以识别三类数据库:■VisualBasic数据库也就是*.MDB数据库■外部数据库它们是使用几种流行格式的“索引顺序访问方法(ISAM)”数据库,这些流行格式包括Btrieve、dBASEIII、dBASEIV、MicrosoftFoxProversions2.0和2.5以及Paradoxversions3.x和4.0。在VisualBasic中能够创建和操作所有以上格式的数据库。也可以访问文本文件数据库和MicrosoftExcel或Lotus1-2-3电子表格。■ODBC数据库包括符合ODBC标准的客户/服务器数据库,如MicrosoftSQLServer。要在VisualBasic中创建真正的客户/服务器应用程序,可以使用ODBCDirect直接把命令传递给服务器处理。也就是说VisualBasic还支持其它不使用Jet数据库引擎的数据访问方法。数据访问对象的ODBCDirect模式允许使用同样的对象模型和语法绕过Jet引擎直接访问ODBC数据。摘自《VisualBasic 数据库通用模块及典型系统开发 实例导航》作者:刘韬 骆娟 编著出版社:人民邮电出版社读书笔记三在vb与access数据库的连接中, 为了让系统能够具有较好的可移植性, 即不必在每次连接时均重新指定数据库路径,于是我查阅了有关数据库相对路径的知识。通过相对路径指定数据库文件在很多情况下,不管采用上述哪一种方法打开数据库, 都必须在程序设计时就指定需要打开的数据库文件。但是,我们通常不能保证该软件完成后一定会被安装在每台机器的同一目录下。 因此该数据库文件的绝对路径一般在设计时还难以完全确定,只能采用相对路径的办法来解决这个问题。在VB中,App对象是一个全局对象,用来提供当前应用程序的相关信息,其 Path属性反映的是当前应用程序的可执行文件 (.exe) 所在的绝对路径,并且只在程序运行时才有效。通过使用App对象的Path属性,可以方便地获得当前程序所在的目录路径。因此,如果把数据库文件存放在与程序路径相关的目录下,便可以在程序设计时就指定数据库文件的相对路径,当程序运行时,通过App对象的Path属性动态地获取其绝对路径。下面的一段代码,用来在程序开始运行时获取程序的路径,并赋值给变量 AppPath,然后在数据控件Data1的DatabaseName属性中与数据库文件的相对路径 "Database\KFGL.Mdb"结合,组成数据库文件的绝对路径。这段代码通常出现在
formload
事件中:
DimAppPath
AsString
'
设置路径变量AppPath=App.Path'
获取程序路径
If Right(AppPath,1)<>"\"Then
AppPath=AppPath+"\"
'
若路径尾部没有
"\"
,则添加之Data1.DatabaseName=AppPath+"Database\KFGL.mdb"' 与相对路径结合,组成绝对路径摘自《visualBasic 编程案例精解》作者:张路平 喻波 邵谦谦出版社:电子工业出版社读书笔记四在VB中,访问数据库一般有两种方式。一、是非编码方式,主要通过 Data等控件设置属性在文本框显示和操作数据库中的数据。二、是通过编写代码 ,即利用数据访问对象 (DAO)来实现可以实现更灵活更复杂的操作在非编程方式下的常用控件 :Data数据控件CommandButton命令按钮 TextBox 文本框Label 标签常用控件属性DatabaseName属性: 返回或设置 Data 控件的数据源的路径及名称RecordSource 属性: 返回或设置 Data 控件的基本表名、 SQL语句DataSource 属性: 返回或指出一个数据控件,通过它把控件绑定到一个数据库。DataField 属性: 返回或设置控件绑定到数据库的字段名在通过编写代码方式下访问数据库
:1.Data 控件的其它常用属性 :Connect 指定数据控件所要连接的数据库类型,默认为RecordsetType 确定记录集类型, 0—Table(表);1
Access的MDB数据库—Dynaset(动态);2—Snapshot(
快照)BofAction 当记录指针指向记录集的开始时,确定数据控件该采取的操作:0—重定位到第一个记录1—定位到一个无效记录,触发一个无效事件ValidateEofAction当记录指针指向记录集的结束时,确定数据控件该采取的操作:0—重定位到最后一个记录1—定位到一个无效记录,触发一个记录的无效事件 Validate2—向记录集加入新的空记录,可以对新记录进行编辑,移动记录指针新记录写入数据库可以与Datat控件绑定的其它常用控件属性:MSFlexGrid 控件属性:DataSourse 位置:MicrosoftFlexGridControl6.0(OLEDB)DBCombo和DBList控件属性:DataField、DataSource、ListField、RowSource、BoundColumn位置MicrosoftDataBoundListControls6.0DBGrid控件属性:DataSourse 位置:MicrosoftDataBoundGridontrol5.0(SP3)数据控件的事件Validate 事件:在一条不同的记录成为当前记录之前, Update方法之前,以及Delete 、Unload 或Close操作之前会发生该事件。它检查被数据控件绑定的控件内的数据是否发生变化。语法:PrivateSubData_Validate(ActionAsInteger,SaveAsInteger) ⋯⋯EndSub数据控件的常用方法Refresh 激活数据控件,使各用户对数据库的操作有效。UpdateControls 将数据从数据库中重新读到数据控件绑定的控件内 ,取消对数据的修改。UpdateRecord 强制数据控件将绑定控件内的数据写入到数据库中,不再触发 Validate
事件5.记录集的属性与方法属性:AbsolutePostion返回当前指针值,如果是第一条记录,其值为0;是只读属性Bof/Eof判断指针在首记录之前时返回True;指在末记录之后返回TrueBookmark设置或返回当前指针的标签,可以用在在程序中重定位记录集的指针NoMatch在记录集中进行查找时,如果找到相匹配的记录,则为Falue,找不到则为True。RecordCount返回记录集中的记录数,要先用MoveLast方法重置指针移到最后一条记录上方法:Move用于移动记录指针,共有5种方法:MoveFirst—将指针移到第1条记录MoveLast—将指针移到最后一条记录MoveNext—将指针移到下一条记录MovePrevious—将指针移到上一条记录Moven—将指针向前或向后移动n条记录方法:Find在指定对象中搜寻含有特定字符串的记录,并使之成为当前记录,共有4种方法FindFirst—从记录集的开始查找满足条件的第1条记录FindLast—从记录集的尾部向前查找满足条件的第1条记录FindNext—从当前记录开始查找满足条件的下一条记录—从当前记录开始查找满足条件的上一条记录FindPrevious方法:Seek 必需先打开表的索引 ,再搜索与索引规则相符的第一条记录 字段名"' 打开表索引 数据内容"' 在Table表中查找
,将其设为当前记录利用数据控件对数据库进行增、删、改操作增加记录:1)调用AddNew方法:Data1.Recordset.AddNew给各字段赋值:Recordset.Fields("字段名")=值或在绑定控件中直接输入内容3)调用Update方法,将缓冲区内的数据写入数据库:Data1.Recordset.Update4)调用MoveLast方法显示新记录:Data1.Recordset.MoveLast删除记录:1)定位被删除记录使之成为当前记录 (用Move或Find方法)调用Delete方法:Data1.Recordset.Delete调用MoveNext方法移动记录指针修改记录:调用Edit方法:Data1.Recordset.Edit给各字段赋值:在绑定控件中直接修改3)调用Update方法,确定所做的修改 :Data1.Recordset.Update摘自《vb开发实用编程 200例》作者:苏瑞 韩中孝出版社:中国铁道出版社读书笔记五引用控件:右键点击工具箱→部件→ .....一. 高级约束数据网格控件 (DBGrid)MicrosoftDataBoundGridControl5.0(SP3):c:\winnt\system32\dbgrid32.ocxDataSource属性:返回Data控件记录集来自动填充网格DBGrid控件的列Columns集合的Count属性和Recordset对象的RecordCount属性可以确定控件中的行和列的数二. 高级约束列表控件(DBList)和高级约束组合框控件( DBCombo)MicrosoftDataBoundListControls6.0:c:\winnt\system32\dblist32.ocx它们能列显示Data控件的字段值,并可以更新其它相关表的字段。通过简单地设置能更新在不同的Data控件的相关的字段DBList 与DBCombo常用的属性:RowSource:指定数据控件中的一个字段内容来填充列表控件的列表区;ListField:返回或设置Recordset对象中的字段名,用于填充列表;SelectedItem:返回一个控件中选中的记录的书签。例题:在列表中选定一个人名,则在其它的几个文本框中就显示这个人的所有完整的信息在新窗体放置一个 Data控件;DatabaseName=E:\szk\myfile.mdb:RecordSource=Phone一个DBList控件;RowSource=Data1:ListField= 姓名四个Text控件;DataSource 都=Data1:DataField 分别=序号、姓名、电话、地址
表在DBLIST控件的单击事件里加入代码OK运行,什么地方就点过一次后发现的确太好用了,呵呵.Bookmark属性:返回或设置Data控件重新定位到特定的行。SelectedItem 属性: 返回或设置所选字段所属的记录书签摘自《visualBasic 编程案例精解》作者:张路平 喻波 邵谦谦出版社:电子工业出版社读书笔记六SQL查询SQL运算符:逻辑运算符 And(与)、Or(或)、Not(非)比较运算符 <<=>>==<>SQL函数:AVG求平均值 COUNT计数SUM求和MAX求最大值 MIN求最小值SQL命令:CREATE用于建立新的数据表结构DROP用于删除数据库中的数据表及其索引ALTER用于修改数据表结构SELECT用于查找符合特定条件的某些记录INSERT用于向数据表中加入数据UPDATE用于更新特定记录或字段的数据DELETE用于删除记录SQL子句:FROM用于指定数据所在的数据表WHERE用于指定数据需要满足的条件GROUPBY将选定的记录分组HAVING用于说明每个群组需要满足的条件ORDERBY用于确定排序依据INTO查询结果去向SQL语句的应用:建立数据表CREATETABLE数据表名 (字段名1数据类型(长度), 字段名2数据类型(长度),⋯)添加字段 ALTERTABLE数据表名 ADDCOLUMN字段名 数据类型(长度)删除字段 ALTERTABLE数据表名 DROPCOLUMN字段名数据查询SELECT字段名表 FROM子句WHERE子句GROUPBY子句HAVING子句ORDERBY子句INTO子句举例:select 姓名fromphonewhere 地址="香港"orderby 姓名从学生表中查询地址为香港的学生,显示其姓名并使结果按学号升序排列。添加记录INSERTINTO数据表名(字段名 1,字段名2⋯⋯)VALUES(数据1,数据2⋯⋯)举例:insert intophone(序号,姓名,电话,地址)values("4"," 二楞子","无","失踪")删除记录DELETEFROM数据表名WHERE条件表达式举例:deletefromphonewhere 地址="失踪"'
注意:这会删掉整条记录更新记录UPDATE数据表名 SET新数据值 WHERE条件表达式举例:updatephoneset 电话=电话+5where 地址="失踪"查找地址字段数据为失踪的记录 ,把该记录电话字段的数据全部
+5摘自《
SQL查询凡人入门—用
SQL查询进行数据处理的上手指南》作者:
MichaelJ.HernandezJohnL.Viescas
王晓廷译出版社:电子工业出版社读书笔记七DataEnvironmentDataEnvironment 是VB6.0提出的一个新概念。它可以将许多单独使用的对象和控件组合成一个单独的环境,建成后的这个数据环境可用来访问任何数据库、 查询或加入其中的存储过程。 这样,我们就不用再担心程序中有多处地方用到了某个数据库的引用, 只需作一处改动,应用程序中的其他有关地方也会作出相应变动。这就给我们开发应用程序带来极大的方便。从某种角度看, DataEnvironment 的作用相当于一个通用的 Data控件,它可以在任何情况下使用,可以连接到所有的数据库、表以及只含一个查询或表的对象上,而不仅仅局限于连接到某个查询或表上。在VB工程中添加了一个数据环境(DataEnvironment1),数据环境设计器就自动地包括一个新的连接(Connection1)。在设计时,数据环境打开连接并从该连接中获得元数据,包括数据库对象名、表结构和过程参数。我们使用下面的步骤来指定数据环境中新建 Connection1 对象的属性。快捷方式菜单您可以通过右键单击数据环境设计器中的任何对象访问快捷方式菜单。DataEnvironment 对象快捷方式菜单DataEnvironment 对象快捷方式菜单包含下面的项目:“全部扩展”展开数据环境设计器的“概要型”视图,显示当前
DataEnvironment
对象中的所有
Connection
和
Command
对象。“全部折叠”折叠数据环境设计器的“概要型”视图。“按对象安排”按照 Connection 和 Command 分类显示数据环境设计器中的所有对象。“按连接安排”显示按照连接分组的对象,与 Connection 对象相关联的所有 Command 对象列在
Connection
对象的下面。“添加连接”添加一个新的
Connection
对象到数据环境设计器。“添加命令”添加一个新的
Command
对象到数据环境设计器。“插入存储过程
...
”访问“插入存储过程... ”对话框。 在这个对话框中,您可以从每个以使用的一个存储过程列表来创建一个或多个 Command 对象。
Connection
对象可摘自《vb开发实用编程 200例》作者:苏瑞 韩中孝出版社:中国铁道出版社读书笔记八DataReport对象的几个常用属性一是DataSource,用于设置一个数据源,通过该数据源,数据使用者被绑定到一个数据库;二是DataMember,从DataSource提供的几个数据成员中设置一个特定的数据成员;三是 LeftMargin、RightMargin、TopMargin、BottomMargin等,用于指定报表的左右上下的页边距;四是Sections,即DataReport的报表标头、页标头、细节、页脚注、报表脚注5个区域,如果加上分组(可以有多层分组),则增加一对区域,即分组标头、分组脚注。其中DataSource一般是一个数据环境或是ADODB.Connec
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 出租山地合同范例
- 单位房屋维修合同范例
- 化工售卖合同范例
- 借款连带担保合同范例
- 加盟物流合同范例
- 出资不经营合同范例
- 双方合作开店合同范例
- 加盟体系合同范例
- 劳务合同范例豆丁
- 农村独栋楼转让合同范例
- Unit 7 A Day to Remember Section A (课件)-2024-2025学年英语人教版7年级下册
- 中央2025年中央社会工作部所属事业单位招聘11人笔试历年参考题库附带答案详解
- 第一单元第六课三、《AVERAGEIF函数》教学设计 2023-2024学年新世纪版(2018)初中信息技术七年级下册
- 2025内蒙古交通集团有限公司阿拉善分公司招聘101人笔试参考题库附带答案详解
- 四川省内江市2024-2025学年高一上学期期末考试语文试题(解析版)
- 肾内科护理责任组长竞聘
- 北京2024年高考真题化学试题(含答案)
- 车辆运输安全管理制度
- 基于BIM的绿色建筑施工流程优化路径探讨
- 中西医结合康复治疗在冠心病PCI术后35例中的应用
- 6ra70调试步骤
评论
0/150
提交评论