Access数据库开发技巧一._第1页
Access数据库开发技巧一._第2页
Access数据库开发技巧一._第3页
Access数据库开发技巧一._第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Access 数据库开发技巧 ( 一) 窗体、查询、报表、宏的联合使用将窗体、查询、报表、宏联合使用可以解决许多问题,是一项重要的技巧。1、从窗体中获得查询中的条件 Access 数据库开发技巧 ( 一) 对于这个问题这里以成绩表的打印为例来说明。我们要打印不同班级的成绩表,首先建立相应报表的 查询,在查询中的班级字段下的条件中输入条件: Between forms! 打印表格 ! 开始班号 And forms! 打印表格 ! 结束班号 。然后再建立一个“打印表格”窗体,在窗体中添加两个组合框控件,即“开始班 号”、“结束班号”两个组合框控件,并且通过“打印表格”窗体中的命令按钮来执行报表的打

2、印,则报 表所依赖的查询中的班级条件可以从“打印表格” 窗体中的“开始班号”、“结束班号”两个组合框中所 输入的数据而获得。2、从窗体中获得宏中所需要的条件 Access 数据库开发技巧 (一 ) 对于这个问题现以主副成绩比较查询为例来说明。我们可以为不同的科目建立不同的主副成绩比较查 询,然后再建立相应的宏,在宏中根据不同的条件如 选择科目 =“语文”来打开相应科目的查询。然后再建立一个 “主副比较” 窗体, 在窗体中添加一个组合框控件, 即 “选择科目” 组合框控件, 并且通过 “主 副比较”窗体中的命令按钮来执行相应的宏, 则宏所依赖的条件可以从 “主副比较” 窗体中的 “选择科目” 组

3、合框中所输入的数据而获得。报表的生成技巧 1、运用查询生成报表 Access 数据库开发技巧 (一 ) 如何产生报表在前面已经讲过,应以查询为基础来建立报表,这样灵活方便。具体来说就是先由基表 生成一个查询,将条件设置好,再用报表生成器以该查询为基础生成报表,不需要的字段可以从报表中删 去,若以后需要可再在报表中添上,报表中需要的表头信息若经常变动,也可从窗体中来获得表头中所需 的信息,可参见前面所述。2、表格线的制作 报表中若需要表格线,不能再用制表符来构造,可以在报表的设计视图中用画线工具来制作,程序中 不便画表格线。Access 数据库开发技巧 ( 二) 模块的使用技巧Access 最重

4、要的特征就是一般不必去写程序,然而可能因为要执行复杂或专业的操作而必须在模块中 用 Visual Basic 编写程序,然后通过窗体中的命令按钮来执行相应的程序完成相应的任务。比如排名次、 分段统计等。在编写 Visual Basic 程序时要注意以下一些问题和技巧。1、变量的运用 对象变量的运用在 Access 中运用 Visual Basic 编写程序, 需要运用其数据访问对象。 它包括数据库引擎 ( DBEngine)、 工作空间( Workspace )、数据库以及数据库对象中的表、查询、记录集等对象。如缺省工作空间:DBEngine.Workspaces(0) ,当前数据库: DBE

5、ngine.Workspaces(0).Databases(0) 。我们可以用一个对象变量来 表示一个对象,这样将为编程带来很大方便。为对象变量赋值要用 Set 语句,而不要直接赋值。例如:Dim thedb As DatabaseSet thedb = DBEngine.Workspaces(0).Databases(0) Variant数据类型的运用Variant 数据类型是所有没被显示声明(如 Dim 、Private 、Public 或 Static 等语句)为其他类型 变量的数据类型。 Variant 是一种特殊的数据类型,除了定长 String 数据及用户定义类型外,可以包含 任何

6、种类的数据。 Variant 也可以包含 Empty 、Error 、Nothing 及 Null 特殊值。 Empty 值用来标记尚未 初始化(给定初始值)的 Variant 变量。内含 Empty 的 Variant 在数值的上下文中表示 0 ,如果是用在 字符串的上下文中则表示零长度的字符串("")。Null表示未知数据或丢失的数据,即无效数据。不应将Empty 与 Null 弄混。 Null 是表示 Variant 变量确实含有一个无效数据。当有些量可能出现 Null 值时,可将该变量定义为 Variant 数据类型。 Variant 数据类型为编程者提 供很大的灵

7、活性,但牺牲了代码的速度和长度。 通过变量来间接引用数据库对象及限定条件 为了增加灵活性,提高控制能力,减少代码的重复和运用循环语句,在程序中应充分运用变量来间接引用数据库对象和限定条件。比如各个年级学生成绩排名次的处理程序,只是各年级的成绩表名不同,我 们可以将程序中的成绩表名用一个变量如“ bzcjb ”来表示,具体处理时再替换为具体的表名,如替换为高 一年级的成绩表名“ g1cjb”。在具体运用中有一些问题要注意,如:Dim thedb As DatabaseSet thedb = DBEngine.Workspaces(0).Databases(0) Dim thecsb As Rec

8、ordsetSet thecsb = thedb.OpenRecordset(bzcjb, DB_OPEN_DYNASET)这里“bzcjb ”可代表任意一个成绩表,若“ bzcjb ”本身就是一个已存在的数表名,则上述最后一个语句 中的“ bzcjb ”应加上引号,如下所示:Set thecsb = thedb.OpenRecordset("bzcjb", DB_OPEN_DYNASET)或计算再比如 Dcount 函数可用于确定特定记录集中的记录数。可以在 Visual Basic 、宏、查询表达式, 控件中使用 DCount 函数。语法是: DCount(expr,

9、domain, criteria) 其参数如下:expr 表达式,用于标识将统计其记录数的字段。可以是一个标识表或查询中字段的字符串表达式。 可为字段的名称或“”,除非是“”, Dcount 函数对包含空字段的记录不记数,若为“” nt 函数计算记录总数。 domain 字符串表达式,代表组成域的记录集,可以是表的名称或查询的名称。 teria 可选的字符串表达式,用于限制 DCount 函数执行的数据范围。对于其限制条件 criteriaExprDcoucri可用一个变量来代替,比如要统计表“ g1cjb ”中字段“语文”分数大于等于 80 分的人数,可用下式来完成: DCount(&quo

10、t; ", "g1cjb", " 班级 >=80")假若用数字型变量“ n”来替换“80”则如下:DCount("", "g1cjb", " 班级>=" n)假若用字符型变量“ n”来替换“80”则如下:DCount("", "g1cjb", " 班级>='" n "'")要注意替代的形式是不同的。上面的符号“”是连接运算符。 2、如何产生程序运行进度框若在程序运行时能产生

11、一个程序运行进度框将会增加不少乐趣, Access 可以实现这一要求。本人在实践中 摸索出一种简单的方法,就是通过在窗体中建两个文本框,一个大一点的长条形文本框(填充色为白色), 作为外框,一个窄一点的长条形文本框(填充色为其他彩色,长度取为 0.011 厘米),作为产生程序运行 流水线用,它们的初始状态均为不可见。然后在程序中控制其属性为可见的且修改进度流水线文本框的宽 度来显示程序的进展情况。要注意的是为了让进度框在程序运行时能及时显示出来必须用 SetFocus 方法Width 属性改将焦点移动到进度框上,并且要调整好流水线文本框与外框文本框的初始位置。注意,在用 变控件宽度时其单位为“

12、 Twip”,1Twip=1/1440 英寸,约为 1/567 厘米。Access 数据库开发技巧 ( 三)各子系统集成的技巧1、选项组、开关按钮、组合框等控件的运用 在窗体上将这些控件巧妙地加以运用可以有机地将有关系统通过一个窗体来控制,这些控件选择值可以传 递到查询、报表及宏中的条件中去,从而使得对查询、报表及宏的控制显得灵活方便。2、选项卡控件的运用在 Access 97 版中新增加了“选项卡”控件,这更使 Access 可以在有限的窗体中集成更多的子系统。比 如在“打印表格”窗体中就可集成“成绩表”、“十分段统计表”、单科每分段统计表“等子系统”,每 个子系统对应一个标签页。3、开关面

13、板窗体的运用 运用开关面板窗体可以将所有的子窗体集成到一起。开关面板窗体可以运用新建一个窗体并在其上放置各 命令按钮来集成各子系统窗体的方法来建立。开关面板窗体可以说就是一个系统主窗体,它可以指引用户 选择所需进行的操作。我们也可以运用 Access 中的“开关面板管理器”来建立开关面板窗体。具体方法如 下: 单击“工具”、“加载项”,然后单击“开关面板管理器”命令。 如果 Microsoft Access询问是否要新建开关面板时,请单击“是”按钮。 在“开关面板管理器”对话框中,单击“编辑”按钮。 在“编辑开关面板页面”对话框中的“开关面板名”框中输入开关面板的名称,然后单击“新建”按钮。文

14、本”框中输入“打印表格”,然后单击“命令”框中的“以编辑方式在“编辑开关面板项目”对话框的“文本”框中,为第一个开关面板按钮输入相应的文本,然后在“命 令”框中单击所需的命令。如在 打开窗体”命令。Microsoft Access 是否会在中的项目。例如,如果在步骤 中单击要打开的窗体名称,例如命令”框下显示另一方框取决于单击的命令。如果有必要,请单击该方框 5 的“命令”框中单击了“以编辑方式打开窗体”命令,可以在“窗体”框 打印表格”,然后单击“确定”按钮。 重复步骤 4 至 6,直到已经在开关面板中添加了所有要添加的项目。如果要编辑或删除项目, 可以在“开关面板上的项目”框中单击该项目,

15、然后单击“编辑”或“删除”按钮。如果要重新安排项目,可以在框 中单击项目,然后单击“往上移”或“往下移”按钮。 单击“关闭”按钮。其它技巧1、经常压缩数据库 当对数据库进行了不断的增加、删除对象等修改工作后,数据库可能会变成碎片保存,并且不能有效地使 用磁盘空间。定期压缩数据库可以重组文件并释放磁盘空间,提高效率。方法:单击“工具”、“数据库 实用工具”、“压缩数据库”命令。据有关资料介绍,新版 Access 2000 能在每次关闭数据库文件时自动 完成这项工作,这将给我们带来很大的方便。2、多用户下的设置 如果想让数据库在网络上共享,比如在网络上同时由几个人输入、或者修改数据,则必须设置好多用户选项。设置多用户选项的方法是: 在“工具”菜单上单击“选项”命令。 单击“高级”选项卡即可进行设置。3、加密及生成“ .mde”文件.mdVisual Basic 程序代码将继续为使数据库系统不被它人破坏,可以加密数据库或将数据库生成为“.mde”文件。将数据库保存为 e” 文件将编译所有模块、 删除所有可编辑的源代码并且压缩目标数据库。执行,但是不能进行查看或编辑,并且数据库的大小将因程序代码的删除而减少。除此之外,内存将优化 使用,这将有助于提高性能。将数据库保存为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论